2016-09-27 3 views
0

Listでオブジェクトを削除した後、ObjectListView(http://objectlistview.sourceforge.net/)を使用してGUIを更新/更新しようとしています。シンプルコード:リストからオブジェクトを削除した後、ObjectListView(TreeListView)を適切に更新する方法

appropriateParent.Entity.Values.RemoveAll(x => x.Id == value.Id); 

ここで、TreeListViewを更新する適切な方法は何ですか?

treeListView.RebuildAll(false); or 
treeListView.RefreshObject(parameterNodeParent); 

戻っ "System.ArgumentOutOfRangeExceptionが"

任意のアイデア?

敬具、

答えて

0

According to the FAQ変更を加えるとき、ListViewコントロールは知りません。したがって、次のいずれかを実行できます。

listView.SetObjects(iEnumerable)を呼び出してiEnumerableをリセットするだけの場合は、リストビューを更新します。

リストの一部を更新する場合は、listview.UpdateObjects(iEnumerable)と呼ぶことができます。オブジェクトがいつ削除されるかはわかりません。

オブジェクトが削除されている場合は、listview.RemoveObjects(iEnumerable)を呼び出してオブジェクトを削除できます。

+0

私が探しているものではありません。 'listView.SetObjects(IEnumerable)'を使ってツリーを再作成します。そして私はそれをしたくありません! :)ちょうど "葉のセクションをリフレッシュ" ... – Karl

+1

リストビューは、リストが変更されたときを知らない。リストの一部を更新しただけの場合は、 'listview.UpdateObjects(iEnumerable)'を呼び出すことができます。ただし、オブジェクトがいつ削除されるかはわかりません。オブジェクトが削除されていることがわかっている場合は、 'listview.RemoveObjects(iEnumerable)'を呼び出すことで削除できます。 – Skyqula

+0

OK、これは私の問題を部分的に解決します!ありがとう! – Karl

関連する問題