[英]WPF: Add TabControl.Selected event to DataTemplate
我有以下XAML設置了TabControl :
<TabControl Name="TabsControl"
ItemsSource="{Binding Tabs}"
SelectedItem="{Binding SelectedTabViewModel}">
<TabControl.Resources>
<DataTemplate DataType="{x:Type vm:SystemSetupViewModel}">
<v:SystemSetupUserControl />
</DataTemplate>
<DataTemplate DataType="{x:Type vm:RateTablesViewModel}">
<v:RateTablesUserControl />
</DataTemplate>
</TabControl.Resources>
<TabControl.ItemContainerStyle>
<Style TargetType="TabItem">
<Setter Property="Header" Value="{Binding Header}" />
<Setter Property="Width" Value="120" />
</Style>
</TabControl.ItemContainerStyle>
</TabControl>
有沒有一種方法可以將命令(綁定到ViewModel中的方法)添加到特定選項卡,從而使我每次選擇選項卡時都可以執行一個方法?
我通常采用的方法是將其放入ViewModel中-由於您綁定到SelectedItem,因此您是否可以檢查舊值!=新值,如果可以,則調用該方法嗎? 您的ViewModels是SelectedItem(看起來是這樣)還是在View中聲明了,因此從您當前的角度來看是無法訪問的?
如果是的話,那么每個ViewModel都不能實現一個接口,即ISelectedTabCallback,然后在該接口上執行該方法嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.