【问题标题】:How to databind a XML file with a treeview in C#如何在 C# 中将 XML 文件与树视图进行数据绑定
【发布时间】:2010-08-19 15:09:48
【问题描述】:

我希望能够在treeview中查看XML文件,用户可以在treeview中拖动节点,或者删除一些节点,那么更改应该会自动反映在XML文件中。举一个我的目的的例子,想想 IE 中的收藏夹层次结构:

修改前的XML文件:

<Folder FolderName="Favorites">
    <Folder FolderName="Google Websites" >
        <Favorite url="www.google.com">Google</Favorite>
    </Folder>
</Folder>

修改前的树状图:

-Favorites    
--Google Websites  
---Google  

用户在treeview中拖动一个节点,treeview变成:

-Favorites
--Google
--Google Websites

然后应该自动修改 XML 文件以反映树视图中的更改:

<Folder FolderName="Favorites">
    <Favorite url="www.google.com">Google</Favorite>
    <Folder FolderName="Google Websites" >
    </Folder>
</Folder>

现在我可以在树视图中显示 XML,可以在树视图中拖动节点,但我不知道如何使 XML 反映树视图中的更改。任何人都可以给我一些关于如何在 C# 中执行此操作的提示?提前致谢。

文森特

【问题讨论】:

    标签: c# xml treeview


    【解决方案1】:

    您没有指定您尝试使用的演示技术。

    但是,如果您使用的是 WPF 或 Silverlight,则答案将在以下问题中深入探讨:Two-way binding of Xml data to the WPF TreeView

    由于您使用的是 Windows 窗体,我建议您查看我的CodeProject article about ForestPad

    【讨论】:

    • 感谢 Timonthy,我使用的是 Windows 窗体。我对 WPF 不是很熟悉,但我会看看是否可以从您提供的链接中获得一些想法。谢谢!
    • @Vincent,检查我的编辑 -- CodeProject 文章有在 Windows 窗体中执行此操作的示例代码。
    • 谢谢蒂莫西。我以某种方式设法使用 XmlDocument 做到了这一点。你的项目对我来说有点太复杂了,但感谢你回答我的问题!文森特
    猜你喜欢
    • 1970-01-01
    • 2013-12-13
    • 1970-01-01
    • 2019-04-01
    • 2011-06-01
    • 1970-01-01
    • 2011-07-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多