我綁定TabControl的ItemsSource,當我添加新的TabItem時,它是可見的但未被選中。我想更改TabControl的SelectedIndex,但我不知道如何從最近創建的TabItem中獲取此索引。
請幫忙。使用數據綁定獲取TabItem的索引
2
A
回答
1
嘗試這樣做,假設tabControl
是控件ID。
tabControl.SelectedIndex = 0;
SelectedIndex
是公共(Get和Set)的TabControl
財產。閱讀更多關於MSDN。
你可以閱讀更多有關數據bidning @
希望這個作品出來。
1
tabControl.SelectedIndex = tabControl.Items.Count -1;
或者你可以綁定SelectedItem
並指定新TabItem
爲SelecteItem
。 這會更乾淨。
1
TabItem具有IsSelected依賴項屬性。 你只是這樣做
tabItem.IsSelected = true.
我相信新的選項卡會爲您選擇。
或者
可以使ItemContainerStyle的TabItem的控制和你以及與綁定的TabItems的IsSelected。
<TabControl x:Name="_tabControl" ItemsSource="{Binding .....}">
<TabControl.ItemContainerStyle>
<Style TargetType="TabItem">
<Setter Property="IsSelected" Value="{Binding TabSelected}"/>
</Style>
</TabControl.ItemContainerStyle>
2
如果您使用的MVVM然後
<TabControl ItemsSource="{Binding Path=MySource}"
SelectedItem="{Binding Path=MyItem,Mode=Twoway}"
SelectedIndex="{Binding Path=MyIndex,Mode=TwoWay}"></TabControl>
這裏說的是有界的屬性都在視圖模型和發射propertyChnaged(我離開了implememntation你)..
因爲我們已經添加Mode=TwoWay
那麼如果您在視圖模型中向集合添加新項目,則可以將其設置爲MySource.Add(<itemInstance>);MyItem=<iteminstance>;
它將在視圖中進行選擇,如果需要,您還將獲得SelectedIndex。
0
tabControl1.SelectedIndex = 1;
tabControl1.SelectedIndex = tabControl1.items.count-1;
是否要選擇當前添加的TabItem,或者您希望將其索引用於其他目的......? – Ankesh 2012-02-14 05:21:18
選擇目前添加的標籤項 – Never 2012-02-14 05:28:13
查看我的回答下面..它應該對你有幫助。如果有錯別字,請聯繫 – Ankesh 2012-02-14 05:34:34