2009-05-29 41 views
2

私はこれが前に起きたと確信していますが、私は答えを見つけることができませんでした。TreeViewとListBoxのSelectedItemを同期させる方法

Peopleのリストで現在選択されているPersonを指し示すSelectedPersonというプロパティを持つPeople(Personの配列)のリストを含む基本ViewModelを作成しました。私はまた、ViewModelのPeopleリストにデータバインドされているListBoxとTreeViewを持っています。

私がしたいのは、ListBoxのSelectedValueとTreeViewのSelectedItemをViewModelのSelectedPersonと同期させておくことです。その考え方は、SelectedPersonが(コントロール、コードなどを介して)どのように変更されても、すべてのコントロールが正しく更新されることです。 TreeViewのSelectedItemは読み取り専用で、明らかにXAMLで利用できないため、ListBoxとTreeViewを使用することはできません。

この作業を行う上でアイデアを得るにはどうすればよいですか?

また、私は純粋なXAMLでこの作業をしようとしています。私のアプリケーションのXAMLファイルは、動的にロードしたり変更したりできるため、コードビハインドは不要です。

ありがとうございます!

答えて

2

Selector.IsSyncronizedWithCurrentItemを使用できます。

thyeリストボックスとツリービューの両方を同じデータソースにバインドし、IsSyncronizedパラメータがtrueに設定されていることを確認することができます。次に、現在の項目の変更が反映されます。

詳しい情報はここで見つけることができます:

link text

+1

こんにちはMidas!あなたの提案を調べましたが、TreeViewにそのプロパティがないようです。 – djcouchycouch

関連する問題