在MahApp应用中设置图标颜色

10

我想在MahApp应用程序中设置图标的颜色,但是画刷无法正常工作。 在这个例子中,图标应该是白色的,但它仍然是黑色的。

<Rectangle Width="20" Height="20">
    <Rectangle.Resources>
       <SolidColorBrush x:Key="BlackBrush" Color="White" />
    </Rectangle.Resources>
    <Rectangle.Fill>
        <VisualBrush Stretch="Fill" Visual="{StaticResource appbar_cupcake}" />
    </Rectangle.Fill>
 </Rectangle>

这是我应用中的资源icons.xml文件。

<Canvas Width="48" Height="48" Clip="F1 M 0,0L 48,0L 48,48L 0,48L 0,0" x:Key="appbar_cupcake">
    <Path Width="24" Height="25" Canvas.Left="13" Canvas.Top="11" Stretch="Fill" Fill="{DynamicResource BlackBrush}" Data="F1 M 32,14C 33.1046,14 34,14.8954 34,16C 34,16.3643 33.9026,16.7058 33.7324,17L 34,17C 35.1046,17 36,17.8954 36,19C 36,20.1046 35.1046,21 34,21L 35,21C 36.1046,21 37,21.8954 37,23C 37,24.1046 36.1046,25 35,25L 15,25C 13.8954,25 13,24.1046 13,23C 13,21.8954 13.8954,21 15,21L 16,21C 14.8954,21 14,20.1046 14,19C 14,17.8954 14.8954,17 16,17L 16.2676,17C 16.0974,16.7058 16,16.3643 16,16C 16,14.8954 16.8954,14 18,14C 19,14 21,12 25,11C 29,14 31,14 32,14 Z M 15,26L 35,26L 32,36L 18,36L 15,26 Z " />
</Canvas>

我做错了什么?

1个回答

14

如果您想动态设置Fill颜色,可以通过设置Fill属性来实现。正如您已经在VisualBrush中使用Fill属性一样。幸运的是,您也可以在OpacityMask属性中使用VisualBrush

<Rectangle Fill="Black">
    <Rectangle.OpacityMask>
        <VisualBrush Visual="{StaticResource appbar_cupcake}" Stretch="Fill" />
    </Rectangle.OpacityMask>
</Rectangle>

希望这有所帮助。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接