Культура изменения приложения Silverlight

Я работаю над приложением Silverlight в данный момент. У меня есть несколько datagrids/textblocks, где я использую привязку стандарта для показа значений, некоторые из которых являются датами. например.

<sdk:DataGrid AutoGenerateColumns="False" IsReadOnly="True" ItemsSource="{Binding Path=MyCollection}">
  <sdk:DataGrid.Columns>
    <sdk:DataGridTextColumn Binding="{Binding Path=Name, Mode=OneWay}" Header="Agent"/>
    <sdk:DataGridTextColumn Binding="{Binding Path=UpdateTime, Mode=OneWay}" Header="Update Time"/>
  </sdk:DataGrid.Columns>
</sdk:DataGrid>
<TextBlock Text="{Binding Path=LastUpdatedTime}"/>

Это связывает прекрасный, но даты всегда показываются американским стилем (m/d/y), тогда как я хочу показать им британский стиль (d/m/y). Я попытался установить культуру с помощью обоих HTML-тэги на странице, размещающей приложение

<param name="uiculture" value="en-GB" />
<param name="culture" value="en-GB" />

и на Application_Start из моего приложения Silverlight

Thread.CurrentThread.CurrentCulture = new CultureInfo("en-GB");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-GB");

но ни один из них не имеет значения. У меня есть пользовательский класс, который реализует IValueConverter интерфейс, я добавил точку останова на методе Преобразования и параметре CultureInfo, который передается в, en-США, как я изменяю культуру?

5
задан Fermin 1 July 2010 в 10:19
поделиться

1 ответ

В конвертере используйте приведенный ниже код

CultureInfo ci = new CultureInfo("en-GB");
return value.ToString(ci);
-1
ответ дан 15 December 2019 в 06:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: