【发布时间】:2014-03-12 09:32:17
【问题描述】:
我尝试以法语格式 dd/MM/AAAA hh:mm:ss 显示日期时间。
我有一个英文格式的 DateTime,例如 MM/dd/AAAA hh:mm:ss AM 或 PM
所以我做了这样的解析:
foreach (var _element in listElement)
{
IFormatProvider culture = new CultureInfo("fr-Fr");
string date = _element.DateModifElement.ToString();
_element.DateModifElement = DateTime.Parse(date, culture, DateTimeStyles.NoCurrentDateDefault);
listElementCollection.Add(_element);
}
它工作得很好,所以现在我的对象中的DateTime 属性具有法语格式。所以我只需要在视图中显示日期即可。
所以我的ObservableCollection 绑定到视图中的LongListSelector,如下所示:
ObsvCollectionBdeskElement =new ObservableCollection<GroupType<BdeskElement>>(listElementCollection);
llsElements.ItemsSource = ObsvCollectionBdeskElement;
在xml中
<phone:LongListSelector
x:Name="llsElements"
ItemsSource="{Binding}"
IsGroupingEnabled="True"
HideEmptyGroups="False"
JumpListStyle="{StaticResource LongListSelectorJumpListStyle}"
LayoutMode="List">
<phone:LongListSelector.ItemTemplate>
<DataTemplate>
<Grid Margin="0,20,0,0" Background="White">
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu IsZoomEnabled="True" x:Name="ContextMenu" Background="#FF00485A" >
<toolkit:MenuItem Header="renommer" Click="renommer_Click" Foreground="White" />
<toolkit:MenuItem Header="supprimer" Click="supprimer_Click" Foreground="White" />
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
<Grid VerticalAlignment="Center" Grid.Column="1" Margin="10,0,20,0" >
<TextBlock Grid.Row="1" Margin="0,2,0,0" Text="{Binding DateModifElement}" Foreground="{StaticResource C01}" FontSize="16"/>
</Grid>
主网格(布局)有一个由我的对象类型定义的数据上下文。但问题是视图仍然显示英文格式。所以我认为这是应用程序的文化,它是用英文保留的,但不是,我检查了这行代码,值是“fr-FR”。
string info = CultureInfo.CurrentCulture.Name;
【问题讨论】:
-
您是要“fr-Fr”文化来完成申请还是仅适用于日期格式?
-
文化应用的属性已经定义为法语...所以我不明白...
标签: datetime windows-phone-8 culture