在项目中要完成一个修改记录排序顺序的需要,通过DataGrID模板列已经绑定,效果如下图
第一行的向上图标和最后一行的向下图标应该隐藏,应该做成如下图效果
我这里使用转换器完成此功能,
转换器代码:
public class MyConvert:IValueConverter { #region IValueConverter 成员 public object Convert(object value,Type targettype,object parameter,System.Globalization.CultureInfo culture) { if (parameter.ToString() == "001"||parameter.ToString()=="002") { return MainPage.Converter(value,parameter.ToString()); } return null; } public object ConvertBack(object value,System.Globalization.CultureInfo culture) { return null; } #endregion }
使用参数来进行不同 *** 作
001用于控制向上 *** 作,002用于向下 *** 作
这里调用MainPage.xaml中的一个转换方法,传入ID和控制方式,MainPage代码如下:
public partial class MainPage : UserControl { private static MainPage self; //保存自己的实例 private List<UserInfo> Users; //保存数据集 public MainPage() { self = this; InitializeComponent(); } private voID UserControl_Loaded(object sender,RoutedEventArgs e) { } private voID LayoutRoot_Loaded(object sender,RoutedEventArgs e) { Users=UserInfoDAL.FindAll(); userInfoDataGrID.ItemsSource = Users; } public static object Converter(object data,string opt) { int ID = int.Parse(data.ToString()); var datas = self.Users; if (opt == "001") { return datas[0].ID == ID ? Visibility.Collapsed : Visibility.Visible; } return datas[datas.Count-1].ID == ID ? Visibility.Collapsed : Visibility.Visible; } }
现在只要将ID绑定到图标的Visibility属性上,在DataGrID绑定模板列上 *** 作时我们可以先在DataGrID外边设计好控件然后移动到模板中去,如下图所示:
这样方便绑定数据
然后移动控件:
移到后如下: 代码上传到我的资源,下载源码: http://download.csdn.net/detail/lijun7788/4651319 总结
以上是内存溢出为你收集整理的Silverlight 转换器应用一修改排充图标显示全部内容,希望文章能够帮你解决Silverlight 转换器应用一修改排充图标显示所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)