Это сводит меня с ума!Форматирование даты в элементе управления DatePicker в Silverlight DataForm
У меня есть форма данных, управляемая службами RIA в silverlight, которая содержит элемент управления datepicker. Я хочу показать дату в формате ddMMMyyyy. Вот образец XAML:
<dataFormToolkit:DataForm x:Name="dataForm" AutoGenerateFields="False">
<dataFormToolkit:DataForm.EditTemplate>
<DataTemplate>
<StackPanel>
<dataFormToolkit:DataField Label="First Name">
<TextBox Text="{Binding PE_FIRST_NAME, Mode=TwoWay}"/>
</dataFormToolkit:DataField>
<dataFormToolkit:DataField Label="Surname">
<TextBox Text="{Binding PE_SURNAME_NAME,Mode=TwoWay}"/>
</dataFormToolkit:DataField>
<dataFormToolkit:DataField Label="Department">
<ComboBox x:Name="cboDepartment" DisplayMemberPath="CC_NAME" SelectedValuePath="CC_ID" SelectedValue="{Binding Path=CC_ID, Mode=TwoWay}"/>
</dataFormToolkit:DataField>
<dataFormToolkit:DataField Label="Start Date">
<controls:DatePicker Text="{Binding PE_START_DATE, Mode=TwoWay}"/>
</dataFormToolkit:DataField>
</StackPanel>
</DataTemplate>
</dataFormToolkit:DataForm.EditTemplate>
</dataFormToolkit:DataForm>
</StackPanel>
Я следовал советам в How to change date format in Silverlight DatePicker control? и добавил следующие строки в моем запуске приложения:
Thread.CurrentThread.CurrentCulture = (CultureInfo)Thread.CurrentThread.CurrentCulture.Clone();
Thread.CurrentThread.CurrentCulture.DateTimeFormat.ShortDatePattern = "ddMMMyyyy";
, но это не имеет никакого значения , дата всегда выводится в необработанном формате, например 1/3/2006 12:00 AM
Есть ли причина, почему текущая культура не работает в форме данных?
Обновление: Если я реализую ту же самую форму жестким способом, не используя форму данных, тогда дата находится в правильном формате!