「OFFLINE」と「ONLINE」という2つのタブを持つWPFタブコントロールがあります。「ONLINE」タブをクリックしたとき、アプリケーションがオンライン状態かどうかを確認する必要があります.(状態!=オンライン)の場合は、エラーメッセージを表示して「ONLINE」(2番目)タブを表示させないようにし、「OFFLINE」タブに移動します.
VIEW.XAML
<TabControl Name="dashboardTabControl" SelectedIndex="{Binding SelectedTabIndex,Mode=TwoWay}">
<TabItem Header="Local Dashboard">
<views:OfflineDashboard DataContext="{Binding OfflineDashboardViewModel}"/>
</TabItem>
<TabItem Header="Online Dashboard">
<views:OnlineDashboard DataContext="{Binding OnlineDashboardViewModel}"/>
</TabItem>
</TabControl>
ビューモデル
public int SelectedTabIndex
{
get
{
return this.selectedTabIndex;
}
set
{
if (value == 1 && !applicationData.IsApplicationOnline())
{
this.SelectedTabIndex = 0;
}
else
{
this.selectedTabIndex = value;
}
// TODO : According to the selected tab index , populate ONLINE/OFFLINE
viewmodels
NotifyPropertyChange("SelectedTabIndex");
}
}
質問: ステータスを確認し、タブを 0 に設定しましたが、機能しません。常に 2 番目のタブをクリックすると、ONLINE タブが表示されます。