我正在使用个人库来定义样式。 我创建了一些DependecyProperty来管理样式大小。
这是我创建的依赖项的一部分:
public class CheckboxExtensions : CheckBox
{
public static readonly DependencyProperty CheckHeightProperty =
DependencyProperty.RegisterAttached(
"CheckHeight",
typeof(double),
typeof(CheckboxExtensions),
new PropertyMetadata(OnHeightChange));
public static void SetCheckHeight(UIElement element, double value)
{
element.SetValue(CheckHeightProperty, value);
}
public static readonly DependencyProperty LeftColorProperty =
DependencyProperty.RegisterAttached(
"LeftColor",
typeof(SolidColorBrush),
typeof(CheckboxExtensions));
public static void SetLeftColor(UIElement element, SolidColorBrush value)
{
element.SetValue(LeftColorProperty, value);
}
public static SolidColorBrush GetLeftColor(UIElement element)
{
return (SolidColorBrush)element.GetValue(LeftColorProperty);
}
}
我可以在我的样式中定义这样的颜色:
<Setter Property="extensions:CheckboxExtensions.LeftColor" Value="{DynamicResource Foreground}" />
<Setter Property="extensions:CheckboxExtensions.RightColor" Value="{DynamicResource ControlBackground.Flash}" />
当我直接在窗口中使用它时,它可以工作,但设计时间没有显示“项目符号”
但是我有一个更大的问题。当我在UserControl库中使用它并将该UserControl加载到应用程序中时。我得到了与设计时相同的结果。完全没有颜色,但尺寸设置正确。
我该如何解决?