我有一个Silverlight DataGrid
,每个列都填充了不同类型的数据。我试图弄清楚如何格式化DataGrid
单元格的一些内容,特别是日期和格式。
我的日期列目前显示如下: 3/11/2010 12:00:00 AM 。我希望它显示为 3/14/2010 。
我有一个数字列,目前显示如下: 51.32 。我宁愿将其显示为 $ 51.32 等货币。
我不知道如何才能做到这一点。我更喜欢用XAML而不是C#来做,但两种解决方案都很好。
作为参考,这是我到目前为止的XAML:
</data:DataGridTextColumn>
<data:DataGridTextColumn Header="Payee"
Binding="{Binding Payee}"/>
<data:DataGridTextColumn Header="Category"
Binding="{Binding Category}"/>
<data:DataGridTextColumn Header="Memo"
Binding="{Binding Memo}"/>
<data:DataGridTextColumn Header="Inflow"
Binding="{Binding Inflow}"/>
<data:DataGridTextColumn Header="Outflow"
Binding="{Binding Outflow}"/>
</data:DataGrid.Columns>
答案 0 :(得分:5)
如果您有可能等待Silverlight 4的发布,可能会在下周的Mix10上发布。它在绑定中有一些新功能,比如格式化。使用Silverlight 4,您可以执行以下操作:
<TextBox Text="{Binding ReleaseDate, StringFormat='MMM dd, yyyy',
Mode=TwoWay}" />
Shawn Wildermuth对his blog上的新功能有一个很好的概述。
答案 1 :(得分:1)
您可以使用基于string.Format的IValueconverter并将其绑定在XAML中。