如何使用复选框动态更改WPF控件的模板?
我有一个错误对话框(如下所示)。
我在ContentControl中显示Report对象,我已经为其定义了一个Template simpleErrorTemplate 模板 。
窗口上有一个CheckBox ,我想用来将模板更改为详细的ErrorErrorTemplate 。 实现这一目标的最佳方法是什么?
Show Details
您可以在ContentControl
样式中使用DataTrigger,其中绑定到ChkShowDetails CheckBox
的IsChecked
属性
更新
完成Xaml示例,粘贴并尝试:)
Show Details
此解决方案适用于正在搜索模板交换的用户。 很简单希望它可以帮到你。 请指出任何错误。
只需使用此代码更改checkBox Checked事件上的模板。
private void checkBox1_Checked(object sender, RoutedEventArgs e) { DataTemplate Temp; Temp = (DataTemplate)this.FindResource("TemplateYouHaveCreated"); listView1.ItemTemplate = Temp; }
请参阅此链接以获取更多信息
http://developingfor.net/2009/01/09/dynamically-switch-wpf-datatemplate/