我正在使用XAML和VB为Windows 8设计应用程序,但认为这个问题可能也适用于Silverlight和WPF。
我可以在绘图应用程序中创建一个形状,然后另存为XAML以获取必要的代码,以便在Visual Studio 2012的XAML代码编辑器中重新创建此形状。
例如,以下产生测试形状:
<Path Stroke="Black" Fill="Gray"
Data="M 10,100 C 10,300 300,-200 300,100" Grid.Row="1"/>
我希望能够使用Data属性中的信息以编程方式创建此形状。
到目前为止,我已经研究过这个LINK,它解释了PathGeometry类。但是,它似乎使用了不同的方法。
我要问的是,是否有办法获取Data属性并将其粘贴到属性中以在VB中创建形状。或者,如果有另一种方法可以做到这一点,我就错过了。
非常感谢。谢谢。
答案 0 :(得分:1)
您可以使用XamlReader
类:
var path = XamlReader.Load("<Path Stroke=\"Black\" Fill=\"Gray\" Data=\"M 10,100 C 10,300 300,-200 300,100\" Grid.Row=\"1\" xmlns=\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\" />");
Canvas.Children.Add(path as UIElement);
只需确保在要加载的XAML代码段中包含默认命名空间。 Canvas
在我的网页中Grid
,我正在添加Path
。