我有 XML 列表,我想在树视图上显示它,父节点将是 XML 文件名,子节点将是 XML 节点数据及其属性。我正在寻找通用解决方案,以便我可以从文件系统加载任何 xml。我如何使用 HierarchicalDataTemplate 和 XmlDataProvider
请帮助我。
我有 XML 列表,我想在树视图上显示它,父节点将是 XML 文件名,子节点将是 XML 节点数据及其属性。我正在寻找通用解决方案,以便我可以从文件系统加载任何 xml。我如何使用 HierarchicalDataTemplate 和 XmlDataProvider
请帮助我。
您需要实现自己的 XmlViewModel 类。此类必须具有属性 Header、Attributes 和 Children,以及通用 XML 文件应具有的任何其他内容。如果您希望此类需要能够解析您的 XML 文本。然后你必须创建一个 HierarchicalDataTemplate 来代表 TreeView 中的这个类。像这样的一些事情:
<HierarchicalDataTemplate
DataType="{x:Type local:XmlViewModel }"
ItemsSource="{Binding Children}"
>
...
最后,您需要将 TreeView.ItemSource 绑定到 XmlViewModels 的集合。也许是这样的:
<TreeView ItemsSource="{Binding YourRoot.Children}">
...
另请参阅这两个链接,将对您有所帮助:
http://www.codeproject.com/Articles/17025/Custom-TreeView-Layout-in-WPF
http://www.codeproject.com/Articles/26288/Simplifying-the-WPF-TreeView-by-Using-the-ViewMode
希望这可以帮助您解决问题...