WPF:从列表<geometry> </geometry>绘制几何图形

时间:2011-06-18 23:19:52

标签: c# wpf

我正在尝试学习wpf,在这个过程中,我基本上试图加载一系列路径并绘制它们。我有几个测试“文件”,包含不同几何类型的某些样本。每个“文件”都有不同数量的形状。

将这些文件加载​​到WPF应用程序的最佳方法是什么。我显然不想在XAML中创建单独的路径,因此有更好的方法,我只是不知道它。我仍然希望这些形状能够被测试。例如。我不想只做联合并将多个形状转换为一组形状。

我在C#4.0中这样做。

编辑:我基本上只是将各种多边形的坐标序列化为文本文件。然后我从这些文本文件创建路径。如果我有一个包含3个多边形的列表,如何在不在XAML文件中显式创建3个路径的情况下渲染它们?

3 个答案:

答案 0 :(得分:1)

如果您正在谈论Shapefiles,那么Mapsui将是一个不错的选择 我不想一直重新发明轮子。

答案 1 :(得分:0)

我认为你应该使用XamlReader类,然后一旦你有了具体的对象,就可以轻松地将它们添加到你希望的父控件的任何地方。

如果您想通过流(例如XamlReader.Load)加载FileStream,请使用XamlReader.Parse,如果它们位于可用字符串中,则使用{{3}}。

这些方法将返回构造的对象树的根(也可能是Path)。

答案 2 :(得分:0)

你应该读取它们(例如从文件中读取)并使用XamlReader来创建它们的具体实例。您可以将它们存储在ObservableCollection中,然后将所述集合绑定到ItemsControl,您已将该面板指定为Canvas