如何在Windows 8应用程序中使用xaml矢量图像作为图像源

我在inkscape中创建了一些资源,并希望将它们用作Windows 8应用程序中的图标。 我已经完成了一些阅读和接缝,而.Net 4.5支持SVG, 现代的ui配置文件没有 。 我使用这个工具将svg转换为xaml 。

我得到以下xaml。

     

如果我将它直接添加到我的应用程序xaml中,它将呈现但是比例是偏离的。

如果可能的话,我想将它用作图像对象的图像源。

  

可以这样做吗?

大多数AppBar按钮都基于StandardStyles中包含的称为AppBarButtonStyle的样式。

要自定义按钮的文本,请设置AutomationProperties.Name附加属性,以自定义设置Content属性的按钮中的图标,并且出于可访问性原因设置AutomationProperties.AutomationId附加属性也是一个好主意。

以下是使用此方法自定义按钮的示例:

  

如上所述,要自定义图标,请设置Content属性。 挑战在于如何设置内容以便显示自定义矢量图。

事实certificate,您可以将任何路径Xaml(甚至是您的路径)放入Viewbox中以更改其比例。 这是我的第一种方法,但它不起作用。 实际上,似乎每次使用Xaml扩展表示法为按钮设置Content属性都不起作用。

  

我实际上认为这是一个错误,但幸运的是有一个解决方法。

Tim Heuer写了一篇关于使用Xaml Path作为按钮艺术作品的最简单方法的精彩文章。 那篇文章在这里:

http://timheuer.com/blog/archive/2012/09/03/using-vectors-as-appbar-button-icons.aspx

简而言之,您需要定义一个正确设置所有绑定的样式:

  

然后,您创建一个inheritance自该样式的样式,并粘贴到您的路径中。 以下是您在上面列出的作品的样式:

  

最后,你在AppBar中使用它,如下所示:

  

开发人员支持,设计支持以及更多令人敬畏的善良: http : //bit.ly/winappsupport

我非常肯定你不能只是将Path Data注入Image Source并期望它神奇地工作,除非它通过绘图对象作为源 。 但是你可以做的是采用你的Path into ContentControl以相同的方式重复使用,而不必为每个实例都经历Drawing对象的麻烦。

而不是;

  

只需执行类似的操作,并将其放在Object.ResourcesResourceDictionary ;

   

然后随便随意地将它放在你的视线上;

   

但是,你会想要玩你的那条路。 它似乎规模很大,但希望这为您的环境提供了一个很好的选择。 干杯!