2015-04-21 89 views
0

我可以在绑定到窗口的属性WPF窗口选项卡控件,如:如何正确绑定TabControl的SelectedIndex?

<TabControl Grid.Row="0" SelectedIndex="{Binding SelectedTabIndex, Mode=TwoWay}"> 
     <TabItem Header="Tab1"/> 
     <TabItem Header="Tab2"/> 
    </TabControl> 

物业上窗口:

public int SelectedTabIndex { get; set; } 

这样,当标签被改变用户,Window属性会自动设置为新索引?我试过了,但是在set上设置断点时,它似乎没有对SelectedTabIndex做任何事情。有什么我在这里失踪?

回答

0

确保属性在您的setter和VM类(或本例中的Window)支持INotifyPropertyChanged时引发PropertyChanged。

如果它仍然没有击中你的setter,那么确保你在Visual Studio中的输出窗口被设置为绑定错误并检查确保它不会因为某种原因试图绑定而抛出错误(这通常表明你的DataContext isn' t设置正确,无论是作为一个整体的窗口还是到达TabControl时,由于被XAML绑定进一步修改)

+0

我必须做这样的事情......这是否有意义? 'SelectedIndex =“{Binding SelectedTabIndex,RelativeSource = {RelativeSource Mode = FindAncestor,AncestorType = Window},Mode = TwoWay}”' – user17753