如何在 Ribbon 中使用 XAML 个图标?
How to use XAML icons with Ribbon?
我有一个当前配置为显示图标的功能区:
<Style x:Key="PrintMenuButton" TargetType="rib:RibbonApplicationSplitMenuItem">
<Setter Property="ImageSource" Value="/styles/metro/print.png"/>
</Style>
我想切换到 XAML(或 SVG)矢量图标。我得到了 Syncfusion Metro Studio,它会生成以下格式的图标:
<Viewbox xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<Grid>
<Grid Name="backgroundGrid" Width="256" Height="256" Visibility="Collapsed" />
<Path Data="M19.833,0L32.5,0 32.5,19.833999 52.334,19.833999 52.334,32.500999 32.5,32.500999 32.5,52.333 19.833,52.333 19.833,32.500999 0,32.500999 0,19.833999 19.833,19.833999z" Stretch="Uniform" Fill="#FF228B22" Width="138" Height="138" Margin="0,0,0,0" RenderTransformOrigin="0.5,0.5">
<Path.RenderTransform><TransformGroup>
<TransformGroup.Children>
<RotateTransform Angle="0" />
<ScaleTransform ScaleX="1" ScaleY="1" />
</TransformGroup.Children>
</TransformGroup>
</Path.RenderTransform>
</Path>
</Grid>
</Viewbox>
然而,由于我在 XAML 方面的技能非常有限,我很难将它们结合起来工作。
我将这个图标(所有带有 Viewbox 的东西)放在 ResourceDictionary 中并添加了 x:Key="MyLovelyIcon",但它不起作用,我不确定为什么。
如果有人能告诉我如何将这些东西粘合在一起,我将不胜感激。谢谢。
经过一番摸索,我得到了我想要的东西:
<Style x:Key="PrintMenuButton" TargetType="rib:RibbonApplicationSplitMenuItem">
<Setter Property="ImageSource" Value="{StaticResource XamlIcon_Misc_Print}"/>
</Style>
和
<DrawingImage x:Key="XamlIcon_Misc_Print">
<DrawingImage.Drawing>
<GeometryDrawing Brush="#FF000000" Geometry="M6.6669998,lots of digits"/>
</DrawingImage.Drawing>
</DrawingImage>
所以基本上我取消了 Path 并将数据移动到 Geometry 对象。如果有人想评论何时使用其中一个以及何时使用另一个以及它们有何不同,或者将 link 留给 MSDN,那就太好了。谢谢
我有一个当前配置为显示图标的功能区:
<Style x:Key="PrintMenuButton" TargetType="rib:RibbonApplicationSplitMenuItem">
<Setter Property="ImageSource" Value="/styles/metro/print.png"/>
</Style>
我想切换到 XAML(或 SVG)矢量图标。我得到了 Syncfusion Metro Studio,它会生成以下格式的图标:
<Viewbox xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<Grid>
<Grid Name="backgroundGrid" Width="256" Height="256" Visibility="Collapsed" />
<Path Data="M19.833,0L32.5,0 32.5,19.833999 52.334,19.833999 52.334,32.500999 32.5,32.500999 32.5,52.333 19.833,52.333 19.833,32.500999 0,32.500999 0,19.833999 19.833,19.833999z" Stretch="Uniform" Fill="#FF228B22" Width="138" Height="138" Margin="0,0,0,0" RenderTransformOrigin="0.5,0.5">
<Path.RenderTransform><TransformGroup>
<TransformGroup.Children>
<RotateTransform Angle="0" />
<ScaleTransform ScaleX="1" ScaleY="1" />
</TransformGroup.Children>
</TransformGroup>
</Path.RenderTransform>
</Path>
</Grid>
</Viewbox>
然而,由于我在 XAML 方面的技能非常有限,我很难将它们结合起来工作。
我将这个图标(所有带有 Viewbox 的东西)放在 ResourceDictionary 中并添加了 x:Key="MyLovelyIcon",但它不起作用,我不确定为什么。
如果有人能告诉我如何将这些东西粘合在一起,我将不胜感激。谢谢。
经过一番摸索,我得到了我想要的东西:
<Style x:Key="PrintMenuButton" TargetType="rib:RibbonApplicationSplitMenuItem">
<Setter Property="ImageSource" Value="{StaticResource XamlIcon_Misc_Print}"/>
</Style>
和
<DrawingImage x:Key="XamlIcon_Misc_Print">
<DrawingImage.Drawing>
<GeometryDrawing Brush="#FF000000" Geometry="M6.6669998,lots of digits"/>
</DrawingImage.Drawing>
</DrawingImage>
所以基本上我取消了 Path 并将数据移动到 Geometry 对象。如果有人想评论何时使用其中一个以及何时使用另一个以及它们有何不同,或者将 link 留给 MSDN,那就太好了。谢谢