我在数据网格中有一个DatePicker,用户可以在其中选择这样的日期
" 07/04/2014"这是在dd / MM / yyyy,但是,当保存到后端时,它会出现在数据库中,如2014-07-04 00:00:00.000。 (所以在美国)
我认为这导致我的问题,当用户选择第12天的日期时,DatePicker变为无效,用户将无法保存。
因此,例如,如果用户选择13/04/2014,则datepicker变为无效,因为正确认为格式为MM / dd / yyyy格式(我相信)
我如何解决这个问题?将模型中的DateTime属性转换为UK格式,还是需要将datepicker的格式设置为不同的格式?
这是XAML
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<DatePicker Text="{Binding From, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
<DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<DatePicker SelectedDate="{x:Static System:DateTime.Now}"></DatePicker>
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
模型中的属性
public System.DateTime From
{
get
{
return m_From;
}
set
{
m_From = value;
PropertyChanged(this, new PropertyChangedEventArgs(From));
}
}
任何帮助都会很好。
由于
答案 0 :(得分:1)
@GerogeHowarth在这里帮助了我,
我意识到CellTemplate
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<DatePicker Text="{Binding From, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"/>
</DataTemplate>
将一个字符串传回模型,我本应该回复一个日期
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<DatePicker SelectedDate="{Binding From, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"/>
</DataTemplate>
这似乎解决了这个问题。
由于