在VisualStudio 2008中,设计界面只是空的,因为我将此样式添加到App.xaml:
<Style x:Key="RightAlignedCell" TargetType="data:DataGridCell">
<Style.Setters>
<Setter Property="HorizontalContentAlignment" Value="Right" />
</Style.Setters>
</Style>
并在顶部添加此必需的命名空间以生成数据:可解析
xmlns:data="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data"
运行Silverlight应用程序时,一切正常。但是设计图面是空的,我在编辑xaml时出现此错误:
无效的属性值 data:DataGridCell属性 的TargetType
如上所述,这个错误只是在设计时发生的事情。编译工作非常完美。我做错了什么,为什么设计师无法正确解析这个命名空间?
更新:当我将样式从App.xaml移到Page.xaml时,设计师再次工作......有什么想法吗?
答案 0 :(得分:0)
你试过这个吗?
<Style x:Key="RightAlignedCell" TargetType="{x:Type data:DataGridCell}">
<Style.Setters>
<Setter Property="HorizontalContentAlignment" Value="Right" />
</Style.Setters>
</Style>
答案 1 :(得分:0)
根据MS silverlight FAQ,这似乎是一个已知的错误,无法解决这个问题。
答案 2 :(得分:0)
将xmlns声明移动到资源字典。像这样:
<ResourceDictionary xmlns:myconverters="clr-namespace:MyCustomConverters;assembly=MyCustomConverters">
...
</ResourceDictionary>
示例可以在这里找到:blog.andrew-veresov.com/post/Silverlight-20-usage-of-the-converters-from-external-assembly-in-appxaml.aspx