1

アプリケーションからのダイアログで、監視可能なコレクション (別の場所に保存されている) がタブのリストにバインドされています。ダイアログを閉じて再度開くと、現在選択されているタブが失われ、最初のタブになります。選択したタブが保持されるようにタブを設定するにはどうすればよいですか?

監視可能なコレクションには「現在のアイテム」プロパティがあるという印象がありましたが、そうではないようです。現在の項目プロパティを持つ ItemCollection と CollectionView を見てきましたが、それが私が興味を持っているかどうかはわかりません。

4

2 に答える 2

4

これは古い質問ですが、これを探している人のために答えます...

MVVM パターンを使用してこれを処理する方法は、TabControl が ItemsSource をバインドする ObservableCollection と、TabControl が SelectedItem プロパティをバインドする ActiveItem プロパティの両方を ViewModel に持つことでした。

これは非常にうまく機能し、MVVM の設計原則を維持しています (つまり、ViewModel はビューを認識してはなりません)。

于 2012-07-13T22:00:01.333 に答える
1

ダイアログが表示されたら、現在選択されてClosingいるを保存しますTabItem

ダイアログが表示されたら、Loaded次のように言います。

yourTabControl.SelectedItem = _savedTab;

これを実現する最も簡単な方法は、コードビハインドです。ObservableCollectionあなたを助けるつもりはありません。

于 2009-08-20T16:35:22.107 に答える