0

ツリービューでデータベースにデータを表示しています。すべてのデータには、独自のコードと親コードがあります (レベルではありません)。私の表示アルゴリズムのステップはこのようなものです

  • ステップ 1 : 親コードが null であるデータを見つける (ルート ノード)
  • ステップ 2 : 親コードがステップ 1 (ステップ 1 の親) であるデータを見つける
  • ステップ 3: 1,2 を treeView に追加して表示する
  • ステップ4:ノードをクリックすると、親コードが選択されたノードであるデータを見つける
  • ステップ 5 : ステップ 4 を選択したコードの子ノードとして追加します

ノード1

└ node2 - 展開アイコンをクリック

  └ノード3 

└ node4 - 選択したノード

この場合、選択したノード (node4) のみを確認できます。そのため、イベント クリックまたは展開/折りたたみに子ノード コードを追加すると、コードはノード 2 ではなく、選択したノード (ノード 4) で動作します。

これが、クリックイベントを使用する理由です。

どのノードの展開アイコンがクリックされたかを確認したい。この例では、取得したいノードは node2 です。

無知ですが単純な方法はうまくいきます...ノードのステータスをすべて保存し、展開前と展開後を比較します。ノード数が多い場合、この方法では時間がかかりすぎます。

node2を選択する他の簡単な方法があれば、それを見つける方法を知りたいです。

説明が下手で申し訳ありません。

4

1 に答える 1

2

ツリービューのOnBeforeExpandイベントを使用できます。このイベントには、Node プロパティで展開するノードを運ぶTreeViewCancelEventArgs引数があります。

于 2013-01-21T06:50:19.560 に答える