<Grid> <Rectangle Fill="AliceBlue" myCore:MyTimePanel.BeginningDate="03/03/2010" /> </Grid>
问题:
Silverlight XAML无法从字符串中解析DateTime.所以在运行时我有XamlParseException“无法从该字符串创建DateTime”.
当我使用一个简单的DependencyProperty时,我只需在getter / setter上添加一个TypeConverterAttribute即可.像这样(来自here的想法):
[TypeConverter(typeof(DateTimeTypeConverter))] public DateTime MyDate { get { return (DateTime)GetValue(MyDateProperty); } set { SetValue(MyDateProperty,value); } }
但是使用附加的DP,没有getter / setter.如何才能在XAML中编写字符串日期?
谢谢 !
解决方法
对于特定于版本的链接感到抱歉,它是包含相关信息的链接.从那个页面:
3 . You can attribute a type-level TypeConverter on the type that serves as the value type. This enables string conversion of all values of the type. For more information,see TypeConverters and XAML.
4 . You can attribute a property-level TypeConverter on the Get accessor method. This enables string conversion of the attached property. Applying TypeConverterAttribute to the Get accessor method rather than the Set accessor method may seem nonintuitive,but that is where XAML processors expect to find the type conversion information (if any) for an attached property. For more information,see TypeConverters and XAML.