我有一个TabControl
有其SelectedIndex
属性绑定到一个布尔值,像这样:为什么我的DataTrigger没有更新TabControl的SelectedIndex属性?
<TabControl>
<TabControl.Style>
<Style TargetType="TabControl">
<Style.Triggers>
<DataTrigger Binding="{Binding Path=IsRunning, UpdateSourceTrigger=PropertyChanged}" Value="True">
<Setter Property="SelectedIndex" Value="1" />
</DataTrigger>
</Style.Triggers>
</Style>
</TabControl.Style>
<TabItem Header="Foo" />
<TabItem Header="Bar" />
</TabControl>
的TabControl
只能切换到第二个选项卡,如果IsRunning
属性变为True
,但现在的问题是,只要IsRunning
属性发生更改,TabControl就不会自行更新以显示第二个TabItem
。
有没有办法通过XAML做到这一点,或者我有我的视图模型来实现SelectedIndex
属性,直接结合到TabControl
的SelectedIndex
?
适用于此。您的底层ViewModel(TabControl的DataContext)在IsRunning更改时引发PropertyChanged事件吗? – 2012-01-18 10:42:28
有意思......是的,PropertyChanged事件肯定会引发。 – Flagbug 2012-01-18 10:52:03
如果将TabControl上的SelectedIndex设置为默认值[这会成为问题](http://msdn.microsoft.com/zh-cn/library/ms743230.aspx)。 – 2012-01-18 11:21:25