【发布时间】:2016-04-22 14:19:28
【问题描述】:
我已经没有办法尝试使用 OnIdiom 更改 XAML 中的 DatePicker 格式属性。我尝试过使用 XAML 样式,我尝试在 Constants.cs 文件中定义字符串并从 XAML 中引用它。我能想到的唯一其他方法是扩展 DatePicker 并将其设置在那里。有人让这个工作吗?
下面列出了不起作用的东西。
OnIdiom 的全局样式:
<Style TargetType="DatePicker">
<Setter Property="Format">
<OnIdiom x:TypeArguments="x:String"
Tablet="D"
Phone="d"/>
</Setter>
</Style>
全局样式引用在我的Constants.cs 类文件中定义的字符串,它使用Device.Idiom == TargetIdiom.Phone ? "d" : "D";
<Style TargetType="DatePicker">
<Setter Property="Format" Value="{x:Static map:Constants.LongDateTimeStringFormat}"/>
</Style>
尝试只定义带有键的字符串:
<OnIdiom x:Key="LongDateTimeStringFormat"
x:TypeArguments="x:String"
Tablet="D"
Phone="d"/>
尝试用另一种方式只定义带有键的字符串:
<x:String x:Key="LongDateTimeStringFormat">
<OnIdiom x:TypeArguments="x:String"
Tablet="D"
Phone="d"/>
</x:String>
当尝试在<DatePicker.Format> 中直接使用<OnIdiom>,不使用样式,或尝试将DatePicker.Format 设置为{x:Static map:Constants.LongDateTimeStringFormat} 时,它也不起作用。
【问题讨论】:
标签: xaml xamarin datepicker xamarin.forms datetime-format