我在我的项目中使用来自 NuGet 的Extended WPF Toolkit Community Edition v2.6,但我不知道我是否应该做更多的事情来允许我设置主题或自定义控件模板。
在要求 Designer/Blend 为 PropertyGrid 控件创建现有默认模板的副本后,UI 已损坏。模板看起来正确,但在设计时或运行时不再起作用。
选择将默认模板复制到新的样式后:
有没有一种简单的方法来编辑这个控件的内置样式?我真的只是想覆盖 PropertyGrid 的编辑器/标签的前景色/背景色。
我在 XAML 中尝试了一些手动戳,但成功有限:
<Style TargetType="{x:Type xctk:DropDownButton}">
<Setter Property="Background" Value="Black"/>
<Setter Property="Foreground" Value="White"/>
</Style>
<Style TargetType="{x:Type xctk:CustomPropertyItem}">
<Setter Property="Background" Value="Black"/>
<Setter Property="Foreground" Value="White"/>
</Style>
<Style TargetType="{x:Type xctk:PropertyGridEditorCollectionControl}">
<Setter Property="Background" Value="Black"/>
<Setter Property="Foreground" Value="White"/>
</Style>
尝试创建属性容器样式时,通过复制默认值,我得到“复制样式失败”。VS Designer 或 Blend 中的错误。
结果如下:
我已经尝试手动包含 Xceed Toolkit 程序集中的 generic.xaml,但它并没有解决问题。
我尝试了两种引用资源的方法:
<ResourceDictionary Source="/Xceed.Wpf.Toolkit;component/themes/generic.xaml" />
<ResourceDictionary Source="pack://application:,,,/Xceed.Wpf.Toolkit;component/Themes/generic.xaml">
这是我尝试设置 PropertyContainerStyle 时来自 Designer 的堆栈跟踪: