我正在使用名为“OFFLINE”的两个选项卡的WPF选项卡控件&“ONLINE”。当“在线”标签点击时,我需要知道应用程序是否处于在线状态。如果(状态!=在线) 显示错误消息并且阻止显示“在线”(第2)标签并且转到“离线”标签。WPF MVVM阻止选项卡更改
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,这是行不通的。 总是点击第二个选项卡,它将显示在线选项卡上。
已经完成,更新了代码,但没有运气。 –
@MadurikaWelivita甚至没有编辑XAML之后? –
是的,我已经尝试过了,但它会转到在线标签 –