带资源图标的WPF有线矩形ResourceDictionary绑定问题
我正在开发一个WPF应用程序,并试图从图标资源字典中为按钮提供一个图标 我创建了一个新的ResourceDictionary合并图标ResourceDictionary,并创建了一些要使用的按钮矩形样式。 然后我发现我不能直接将图标绑定到VisualBrush,我必须创建另一个VisualBrush ResourceKey来显示图标。 我在下面列出了工作代码和不工作代码 有人知道这个解释吗?感谢您的帮助。非常感谢 绑定xaml:带资源图标的WPF有线矩形ResourceDictionary绑定问题,wpf,binding,resourcedictionary,Wpf,Binding,Resourcedictionary,我正在开发一个WPF应用程序,并试图从图标资源字典中为按钮提供一个图标 我创建了一个新的ResourceDictionary合并图标ResourceDictionary,并创建了一些要使用的按钮矩形样式。 然后我发现我不能直接将图标绑定到VisualBrush,我必须创建另一个VisualBrush ResourceKey来显示图标。 我在下面列出了工作代码和不工作代码 有人知道这个解释吗?感谢您的帮助。非常感谢 绑定xaml: <Button Width="80" Height="80"
<Button Width="80" Height="80">
<Rectangle Style="{DynamicResource Icon14040}"></Rectangle>
</Button>
非工作风格:
<Style x:Key="Icon14040" TargetType="{x:Type Rectangle}">
<Setter Property="Height" Value="40" />
<Setter Property="Width" Value="40" />
<Setter Property="Fill">
<Setter.Value>
<VisualBrush Visual="{StaticResource Icon1}"></VisualBrush>
</Setter.Value>
</Setter>
</Style>
<VisualBrush x:Key="Icon1Brush4040" Visual="{StaticResource Icon1}" />
<Style x:Key="Icon14040" TargetType="{x:Type Rectangle}">
<Setter Property="Height" Value="40" />
<Setter Property="Width" Value="40" />
<Setter Property="Fill">
<Setter.Value>
<StaticResource ResourceKey="Icon1Brush4040" />
</Setter.Value>
</Setter>
</Style>
工作作风:
<Style x:Key="Icon14040" TargetType="{x:Type Rectangle}">
<Setter Property="Height" Value="40" />
<Setter Property="Width" Value="40" />
<Setter Property="Fill">
<Setter.Value>
<VisualBrush Visual="{StaticResource Icon1}"></VisualBrush>
</Setter.Value>
</Setter>
</Style>
<VisualBrush x:Key="Icon1Brush4040" Visual="{StaticResource Icon1}" />
<Style x:Key="Icon14040" TargetType="{x:Type Rectangle}">
<Setter Property="Height" Value="40" />
<Setter Property="Width" Value="40" />
<Setter Property="Fill">
<Setter.Value>
<StaticResource ResourceKey="Icon1Brush4040" />
</Setter.Value>
</Setter>
</Style>
奇怪的是,它们很相似。对我来说,有两个结构可以工作。在窗口中的样式内进行测试。参考资料。
对于工作案例也可以这样写:
@AnatoliyNikolaev我认为它们是一样的,但是结果让我惊讶,并且非常困惑。