1

特定のテキストまたは名前でノードの数を取得するために、適切な方法でツリービュー ノードの数をオーバーライドしたいと考えています。そうすることは可能ですか?前もって感謝します。

例えば:

これは私のツリービューがどのように見えるかです

ここに画像の説明を入力

この場合、treeView1.Nodes[0].Nodes.Count を使用すると、ルートのノード数である 3 を取得します。

このように、treeView1.Nodes[0].Nodes.CountByText("Folder") が必要です。これは、正確な数のノード (Text = "Folder") がルート ノードに存在する 2 を返します。

4

2 に答える 2

1

これは、@Jaycee によって提供されたコードに基づく私の修正版であり、他の人に役立つことを願っています

public static class Extensions
{
    public static int CountByText(this TreeNode view, string text)
    {
        int count = 0;

        //logic to iterate through nodes and do count
        foreach (TreeNode node in view.Nodes)
        {
            if (node.Text == text)
            {
                count++;
            }
        }
        return count;
    }

}
于 2013-10-09T00:49:32.163 に答える