In this question https://stackoverflow.com/questions/4720446/wpf-adding-tabitems-dynamically/4722047#4722047我问了关于添加TabItems
动态地到TabControl
the ItemsSource
来自ObservableCollection<Village>
..
我的问题是是否向任何添加一个按钮TabItem
,该按钮将具有DataContext
其容器的TabItem
,我怎样才能实现这个按钮的Click事件呢?
如果您已将 Button 添加到 DataTemplate,则在 Button_Click 方法中您可以轻松获取“Village”数据上下文。
void Button_Click(object sender, RoutedEventArgs e)
{
Village clickedVillage = ((Button)sender).DataContext as Village;
//Do whatever you want to do with the Village
}
但同样,上述解决方案并不是解决此问题的最佳方法。 MVVM 模式期望您的 Village(或其容器类)中有一个 ICommand,并且您将该命令绑定到 Button.Command 属性,因此根本不会有任何代码隐藏。或者换句话说,您的 XAML 将更加简洁,ViewModel 在属性和操作方面将变得更加独立。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)