我有一个清单:" IList"该提交的一个是" dateTime"。 我将此列表添加到dataGrid(wpf),以及字段的所有值" dateTime"以这种格式显示:" MM / dd / YYYY hh:mm:ss tt", 我希望这个值只显示日期(日期格式:dd / MM / YYYY)。
我的代码(这不是解决方案):
listUsers = (IList<Users>)list;
foreach (Users user in listUsers)
{
user.birthday = user.birthday.Date;
}
dataGrid1.ItemsSource = listUsers;
listClass = "Users";
答案 0 :(得分:1)
您可以将Column的绑定StringFormat设置为“短日期模式”的“d”。有关所有可用日期时间格式的列表,请参阅https://msdn.microsoft.com/en-us/library/az4se3k1(v=vs.110).aspx
例如:
<DataGrid ItemsSource="{Binding Users}">
<DataGrid.Columns>
<DataGridTextColumn Header="Date"
Value="{Binding JoinDate, StringFormat={}{0:d}}" />
</DataGrid.Columns>
</DataGrid>
答案 1 :(得分:1)
日期格式纯粹是一种视觉效果 - 这意味着您不应该迭代初始数据并在显示之前进行翻译。特别是在WPF中,这种事情非常容易。
您正在使用DataGrid,因此在显示日期的列的绑定中,您只需指定格式字符串,如this answer中所示。