2017-10-03 16 views
0

viewmodelからtabitemを選択できません。isselectedとselectedindexを試しますが、それでも機能しません。Tabitemがviewmodelから選択されていません

のViewModel:

 public int _selectedIndex; 
    public int SelectedTabIndex 
    { 
     get { return _selectedIndex; } 
     set 
     { 
      if (_selectedIndex != value) 
      { 
       _selectedIndex = value; 
       //if (RaisePropertyChanged != null) 
        RaisePropertyChanged("SelectedIndex"); 
      } 

     } 
    } 

XAMLコード:

<TabItem Header="Fault Code Table" DataContext="{Binding TESTModel, Source={StaticResource Locator}}" IsEnabled="True" TabIndex="{Binding Path=SelectedTabIndex ,Mode=TwoWay}" > 
          <StackPanel> 
           <local:FaultCodeTable />  
          </StackPanel> 
         </TabItem> 
+0

無関係のプロパティである 'TabIndex'ではなく、' SelectedIndex'にバインドします。 Tabキーを使用してウィンドウ内のコントロールを循環させると、各コントロールに割り当てられたTabIndexによって順序が制御されます。すべてのコントロールにはそのプロパティがあります。 –

+0

SelectedIndexはtabitemでは使用できません。 –

+0

おっと、申し訳ありませんが、私はあなたがTabControlではなくTabItemにバインドしていることに気がつかなかった。 'TabControl.SelectedIndex'は、その' TabControl'で選択された 'TabItem'のインデックスです。それはあなたがやろうとしていることですか? –

答えて

1

あなたがソースプロパティに親TabControlSelectedIndexプロパティをバインドする必要があります

<TabControl SelectedIndex="{Binding SelectedTabIndex}">... 

個々TabItemIsSelectedを持っていますあなたの財産それが現在選択されているかどうかを判断するために使用できます。それはItemsControlではないので、選択されたインデックスの概念はありません。

+0

ありがとう、これは働いた。また、Tabitem IsSelectedのプロパティはプロパティを1回だけ変更します。これは私のビューモデル 'private bool _isselected;です。 public bool Isselected { get {return _isselected; } セット { _isselected = value; RaisePropertyChanged( "_ Isselected"); = {{TindingModel、Source = {StaticResource Locator}} "IsSelected =" {バインディングIsselected、Mode = TwoWay、UpdateSourceTrigger = PropertyChanged} "というエラーメッセージが表示されます。 > ' –

+0

@SamKingあなたのパブリックプロパティの名前は 'Isselected'です。 RaisePropertyChangedに '' _Isselected''を渡しますが、 '_Isselected'プロパティは存在しません。プロパティの実際の名前を渡してみてください。 –

+0

@EdPlunkett私はモデル 'private bool _isselected;で定義されているpublicプロパティを持っています。 public bool Isselected { get {return _isselected; } セット { _isselected = value; RaisePropertyChanged( "_ Isselected"); } } ' –

関連する問題