TreeView
を使用して、複雑なデータ構造をより簡単にナビゲートすることができます。私は自分のアプリケーションに機能を追加しようとしているので、ユーザーはツールバーのボタンをクリックして新しいアイテムをデータストアに追加できます。この新しいアイテムには3つのレベルがあり、それぞれに1つのアイテムがあります。最も低いレベルのアイテムを選択したいと思います。WPFの新しく追加された項目に選択を設定TreeView
データを追加することは問題ありません。具体的には、TreeView
にバインドされた新しいアイテムをコレクションに追加するだけです。私はTreeView
を手で見てアイテムを調べることができるので、追加作業が分かっています。ここでは、プログラムで新しい項目の選択を設定したいと思います。したがって、ユーザーは要素のデフォルト設定をすぐに変更することができます。
私はいくつかのテストを行ってきたと私は選択を設定することはようなもので行われることを発見した:私は私のアドオン方式の直後にこのコードを追加しようとしました
var obj = TreeView.ItemContainerGenerator
.ContainerFromItem(selectedObject) as TreeViewItem;
obj.IsSelected = true;
。追加関数は新しいオブジェクトを返し、selectedObjectに配置します。 Addメソッドは、ObservableCollection
にaを追加し、適切なイベントを発生させます。
しかし、objは追加直後に常にnullです。
LayoutUpdatedイベントで選択範囲を設定しようとしましたが、この場合、前のコードの変数objの変数は常にnullです。
ここに何か不足している可能性があります。バインドされたコレクションに新しいアイテムを追加し、そのアイテムをTreeView
で選択する方法について誰かが考えていますか?