당신은 당신의 ViewModel에에서 INotifyPropertyChanged를 구현하고 변화에 통지하여 뷰 모델의 정수 속성에 의해 selectedIndex를 결합 할 수
이 같은 뭔가 :
뷰 모델 :
public sealed class MainViewModel : INotifyPropertyChanged
{
private int _tabNumber = 0;
public int TabNumber
{
get { return _tabNumber; }
set
{
if (value == _tabNumber) return;
_tabNumber = value;
OnPropertyChanged("TabNumber");
}
}
private void ChangeTab(int tabNumber)
{
TabNumber = tabNumber;
}
public event PropertyChangedEventHandler PropertyChanged;
[NotifyPropertyChangedInvocator]
private void OnPropertyChanged(string propertyName)
{
PropertyChangedEventHandler handler = PropertyChanged;
if (handler != null) handler(this, new PropertyChangedEventArgs(propertyName));
}
}
XAML :
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525" DataContext="{StaticResource MainViewModel}">
<Grid>
<TabControl Height="100" SelectedIndex="{Binding TabNumber}" HorizontalAlignment="Left" Margin="108,108,0,0" Name="tabControl1" VerticalAlignment="Top" Width="200">
<TabItem Header="tabItem1" Name="tabItem1">
<Grid />
</TabItem>
</TabControl>
</Grid>
</Window>
출처
2013-10-31 15:53:08
JMK
나는'SelectedIndex'라고 가정합니다. 'TabIndex'는'Control'의 속성입니다. – Jordan
나는 확실히했다, 사과한다! – JMK