-1

私はツリービューを持っています。「i」個の親ノードと「j」個の子ノードで構成されます。ユーザーがどの「i,j」ノードをクリックしたかを特定する必要があります。以下に示すようにノード テキストを取得できますが、treeView ノード コレクション内のノードを識別する必要があります。どうやってやるの?

private void treeView1_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e)
{
    listView1.Items.Add(e.Node.Text);
}

例: 5 つの親を持つツリーがあり、各親には 10 の子ノードがあるとします。次に、3 番目の親にある最初の子ノードをクリックします。この場合は (2,0) である (i,j) ペアを受け取る必要があります。

レナン

4

1 に答える 1

1

Indexのプロパティを使用して、TreeNode内の位置を取得できますTreeNodeCollection。これを試して:

private void treeView1_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e)
{
   TreeNode parent = e.Node.Parent;
   string i = parent == null ? "No parent" : parent.Index;
   listView1.Items.Add(string.Format("{0}:{1}",i,e.Node.Index);
}

: . "No parent"_ parent is nullその場合は自分で処理できます (そのケースを破棄するなど)。

于 2013-09-24T16:58:25.613 に答える