按值查找 TreeView 节点

发布于 2024-12-05 00:55:22 字数 473 浏览 0 评论 0原文

我的所有 TreeView 节点都有一个唯一的节点深度 ID。

我想在与某个值匹配的 TreeView 节点上设置 Checked=True

目前我正在执行以下操作:

Dim value As Integer = 57

For Each n As TreeNode In tvForces.Nodes
   If n.Value = value Then n.Checked = True
Next

是否有更好的方法来查找我想要设置为 Checked=True 的节点,而不是循环遍历每个节点?

我正在寻找类似的东西:

Dim value As Integer = 57

n.FindNodesByValue(value)(0).Checked = True

有没有类似的东西我可以使用?

All my TreeView nodes have a unique ID for their Node Depth.

I want to set Checked=True on the TreeView Node which matches a certain value.

Currently I'm doing the following:

Dim value As Integer = 57

For Each n As TreeNode In tvForces.Nodes
   If n.Value = value Then n.Checked = True
Next

Is there a better way of finding the Node which I want to set as Checked=True rather than looping through each node?

I'm looking for something like:

Dim value As Integer = 57

n.FindNodesByValue(value)(0).Checked = True

Is there anything like this that I can use?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

山人契 2024-12-12 00:55:22

伪代码 (c#) 使用 LINQWhere( ) + List.ForEach():

nodes.Where(node => node.Value == "5")
     .ToList()
     .ForEach((node => node.Checked = true));

请参阅上述链接后的 MSDN,了解这两种方法的 VB.NET 语法。

Pseudocode (c#) to demonstrate an idea using LINQ Where() + List.ForEach():

nodes.Where(node => node.Value == "5")
     .ToList()
     .ForEach((node => node.Checked = true));

See MSDN following the links above for VB.NET syntax of both methods.

扛刀软妹 2024-12-12 00:55:22
                foreach (TreeNode node in TreeView1.Nodes)
                {
                    if (node.Value == "8")
                    {
                        node.Checked = true;
                    }
                    foreach (TreeNode item1 in node.ChildNodes)
                    {
                        if (item1.Value == "8")
                        {
                            item1.Checked = true;
                        }
                    }
                }               
                foreach (TreeNode node in TreeView1.Nodes)
                {
                    if (node.Value == "8")
                    {
                        node.Checked = true;
                    }
                    foreach (TreeNode item1 in node.ChildNodes)
                    {
                        if (item1.Value == "8")
                        {
                            item1.Checked = true;
                        }
                    }
                }               
司马昭之心 2024-12-12 00:55:22
for (int j = 0; j < TreeView1.CheckedNodes.Count; j++)
    {    
        Response.Write(TreeView1.CheckedNodes[j].Value));
    }
for (int j = 0; j < TreeView1.CheckedNodes.Count; j++)
    {    
        Response.Write(TreeView1.CheckedNodes[j].Value));
    }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文