1

ビジネスオブジェクト階層を表示しているTreeListがあり、そのすべての部分がIVirtualTreeListDataを実装しています。ただし、ある時点で変更を加えたいと思います。データを削除するか、データを追加するか、リーフを別の含まれているノードに移動します。基になるビジネスオブジェクトに変更を加えることはできますが、表示されるツリーは影響を受けません。

その理由は、TreeListがIVirtualTreeListDataの階層を1回下って(ノードの最初の拡張に対応)、途中で取得したノードに格納されているデータを使用するという事実にあると思います。では、データソースの変更をどのようにビューに伝播できるのでしょうか。

4

1 に答える 1

1

XtraTreeList ノード階層と基礎となるビジネス オブジェクトとの自動同期を有効にするには、VirtualTreeGetChildNodesInfo.Children プロパティとして提供した子オブジェクト コレクションの IBindingList インターフェイスを実装ください。 このタスクを実行する最も簡単な方法は、BusinessObject 内にインスタンスを作成してすべての子オブジェクトを格納し、それをメソッド実装内のプロパティに割り当てることです。この場合、オブジェクトが変更または削除されると、TreeList は対応するノードを自動的に更新します。
BindingList<YourBusinessObject>()info.ChildrenIVirtualTreeListData.VirtualTreeGetChildNodes()

于 2013-03-22T12:52:34.940 に答える