我有一个在 XAML 中定义的矢量图像。在 WPF 应用程序中使用此资源的正确方法是什么?
我想将矢量图像放在它自己的 XAML 文件中,然后将图像添加到我的应用程序中的其他 UserControls。我的 XAML 矢量图像中的顶级元素应该是什么?如何在其他用户控件中引用该图像?
我有一个在 XAML 中定义的矢量图像。在 WPF 应用程序中使用此资源的正确方法是什么?
我想将矢量图像放在它自己的 XAML 文件中,然后将图像添加到我的应用程序中的其他 UserControls。我的 XAML 矢量图像中的顶级元素应该是什么?如何在其他用户控件中引用该图像?
<ContentControl Template="{StaticResource Credit-Card}" />
在 WPF 和 Silverlight 中以可重用的方式使用矢量图形是极其困难的。
这两个 StackOverflow 问题讨论了一些可用的选项:
在阅读完这些问题和答案后,我认为最好的解决方案是坚持使用像 PNG 这样的位图/光栅格式,直到 Microsoft 决定支持 SVG。
以下是如何以可重复使用的样式方式做到这一点:
https://github.com/alansingfield/VectorIcon/blob/master/README.md
<Style x:Key="CarIcon"
TargetType="local:VectorIcon">
<Style.Setters>
<Setter Property="Geometry">
<Setter.Value>
<PathGeometry Figures="M18,18H6V6H18M18,4H6A2,2 0 0,0 4,6V18A2,2 0 0,0 6,20H18A2,2 0 0,0 20,18V6C20,4.89 19.1,4 18,4Z" />
</Setter.Value>
</Setter>
</Style.Setters>
</Style>
<local:VectorIcon Style="{StaticResource CarIcon}" Foreground="Green"/>