silverlight之How To:格式化DataGrid里的列显示

silverlight之How To:格式化DataGrid里的列显示,第1张

概述 DataGrid里的列可以很方便的绑定到数据源里的某个属性,但是有时候需要格式化这个属性值的显示,比较典型的就是属性是DateTime类型的,当只想显示以特定格式显示日期部分,这个时候怎么做呢? 首先,按正常的绑定如下: <data:DataGrid Grid.Row="0" x:Name="gridWorkflow" CanUserSortColumns="True" FrozenColumn

 DataGrID里的列可以很方便的绑定到数据源里的某个属性,但是有时候需要格式化这个属性值的显示,比较典型的就是属性是DateTime类型的,当只想显示以特定格式显示日期部分,这个时候怎么做呢?

首先,按正常的绑定如下:

<data:DataGrID GrID.Row="0" x:name="grIDWorkflow" CanUserSortColumns="True" FroZenColumnCount="2" autoGenerateColumns="False" IsReadonly="True" borderThickness="1,1,1" SelectionChanged="grIDWorkflow_SelectionChanged">             <data:DataGrID.Columns>                                 <data:DataGrIDTextColumn header="日期" Binding="{Binding ValIDFrom}">                 </data:DataGrIDTextColumn>                             </data:DataGrID.Columns>         </data:DataGrID> 

 

其次,我们必须定义一个转换类,该类必须实现IValueConverter接口,如下:

public class DateConverter : IValueConverter     {         #region IValueConverter Members         public object Convert(object value, Type targettype, object parameter, System.Globalization.CultureInfo culture)         {             DateTime date = (DateTime)value;             return date.ToString("yyyy-MM-dd");         }         public object ConvertBack(object value, System.Globalization.CultureInfo culture)         {             throw new NotImplementedException();         }         #endregion     }

 

其中的Convert方法就是指定怎么格式化数据的。

然后在用户控件里定义一个资源来实例化这个类:

 <UserControl.Resources>         <AoyaWorkflow:DateConverter x:Key="dc"/>     </UserControl.Resources>

 

最后就是使用这个资源了,如下:

<data:DataGrID GrID.Row="0" x:name="grIDWorkflow" CanUserSortColumns="True" FroZenColumnCount="2" autoGenerateColumns="False" IsReadonly="True" borderThickness="1,1" SelectionChanged="grIDWorkflow_SelectionChanged">             <data:DataGrID.Columns>                                 <data:DataGrIDTextColumn header="日期" Binding="{Binding ValIDFrom, Converter={StaticResource dc}}">                 </data:DataGrIDTextColumn>                             </data:DataGrID.Columns>         </data:DataGrID> 

可能第一次用起来会有些繁琐,不过用过就马上可以掌握了。

总结

以上是内存溢出为你收集整理的silverlight之How To:格式化DataGrid里的列显示全部内容,希望文章能够帮你解决silverlight之How To:格式化DataGrid里的列显示所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/web/1052301.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存