gpt4 book ai didi

C# 将 html 文档与 TreeView 绑定(bind)

转载 作者:行者123 更新时间:2023-11-28 00:03:07 25 4
gpt4 key购买 nike

我正在通过对 TreeView 进行更改来制作此 html 编辑器(使用 HtmlAgilityPack)- 更改必须与加载的文档并行进行,

将 htmlNode 与 treeNode 相关联的最佳方式是什么(我认为这与 XmlNode 完全相同)。我有一些想法,但我想知道是否有一些好的解决方案。

最佳答案

到目前为止还没有人提供帮助,我发布了我这样做的方法,但是,如果有人提供更好的解决方案,我会接受。

    public void bind(HtmlNode htmlN, TreeNode treeN)
{

StringBuilder result = new StringBuilder();
switch (htmlN.NodeType)
{
case HtmlNodeType.Comment :
result.Append(htmlN.InnerText);
break;
case HtmlNodeType.Document :
result.Append("root");
break;
case HtmlNodeType.Element :
result.Append('<').Append(htmlN.Name).Append('>');
break;
case HtmlNodeType.Text :
result.Append(htmlN.InnerText );
break;
default:
result.Append("undefined element");
break;
}

treeN.Text = result.ToString();
treeN.Name = htmlN.Name;
treeN.Tag = htmlN;

TreeNode newTN;

foreach ( HtmlNode node in htmlN.ChildNodes ){
if ( node.NodeType == HtmlNodeType.Element || node.InnerText.Trim().Length > 0 ){
newTN = new TreeNode();
treeN.Nodes.Add(newTN);
bind(node, newTN);
}
}
}

关于C# 将 html 文档与 TreeView 绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20241753/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com