2012-03-11 19 views
0

私のWPFアプリケーションには4つのTabItemがあるTabControlがあります。 各TabItemには、GridViewとViewとで異なるListViewがあります。 TabControlのItemContainerStyleは、 '通常の' ContentPresenterとTextBoxでカスタムヘッダーを定義します。TabItemコンテンツが変更されたときのTabItemHeaderの更新

ListView.ItemSourceが変更されたときに各LisViewの項目数を表示するために、各TabItemヘッダーのTextBoxを更新するにはどうすればよいですか? ItemSourceは、コードの背後にあるスレッドから非同期に定期的に設定されます。

RunOnUI(() => { firstTabList.ItemsSource = itemsFirstList; });

おかげ

+0

ItemsSourceはどのように設定しますか?あなたのアプローチは何ですか?コードビハインドのMVVMやシンプルなイベントハンドラ? – EvAlex

+0

私はちょうど同様の質問に答えました:http://stackoverflow.com/questions/9547461/how-to-create-tab-able-content-in-wpf-c/9648672#9648672。それは助けるかもしれません。そうでない場合は、コードを投稿してください。 – Phil

+0

@EvAlex:コードビハインドを使用しています。 –

答えて

0

は、あなたが背後にあるコードを使用しているなら、あなたはあなたののTabItem

<TabItem x:Name="tabItem1" ...> 

に名前を付けることができ、その後、あなたがのItemsSource

RunOnUI(()=>{ 
    firstTabList.ItemsSource = itemsFirstList; 
    tabItem1.Header = string.Format("Header: {0}", itemsFirstList.Count); 
} 
を更新する際にヘッダを設定します
+0

はい、問題は解決します。別のコンテキストでは、XAMLバインディングを介してコンバータがリストを受信し、アイテムの数を返すことで可能ですか? –

+0

コンバータは必要ありません。INotifyPropertyChangedをサポートするビューモデルが必要です。私があなたに指摘した例を簡単に適応させることができます。 – Phil

関連する問題