enter image description here 当你看到图片时,我希望通过" yyyy / mm / dd"来显示简短的日期形式。在我的TextBox或PersianDatePicker。 但是当我在XAML中将此代码用于PersianDatePicker时:
<PersianDateControls:PersianDatePicker x:Name="ImgDateReq"/>
在C#中:
ImgDateReq.Text = query.ImgDateRequest.ToString();
我收到此错误: 错误3无法隐式转换类型&#39; string&#39;到了Arash.PersianDate&#39;
当我在XAML中使用DatePicker时:
<DatePicker x:Name="D1" />
在C#中
D1.Text = query.ImgDateRequest.ToString();
我得到了结果。 如何以简短格式显示我的PersianDateControl,如DatePicker
答案 0 :(得分:0)
对于第一个问题,您需要将字符串转换为Arash.PersianDate。
以下示例说明了它的外观以及 NOT 的确切解决方案:
string dtString = query.ImgDateRequest.ToString()
ImgDateReq.Text = new PersianDate(dtString);
您需要了解如何将该字符串转换为Arash.PersianDate对象。
另外,您似乎并未使用MVVM模式,这通常是接近WPF的错误方式。目前,您正在自行更新UI元素属性,这仅在特殊情况下和/或在必要时进行。
我建议您查看MVVM pattern for WPF。
从那里,一旦你有一个ViewModel并将所述ViewModel绑定到View,你可以使用data binding和converters来绑定和转换你的DateTime字符串。
此外,您还需要使用PropertyChanged通知来更新用户界面。