Tag: controltemplate

将SolidColorBrush绑定到ControlTemplate背景

您好我试图将SolidColorBrush绑定到TabItem控件模板中的边框的Background属性。 但是当我改变SolidColorBrush资源的值时,它说“无法在对象上设置属性’#FF808080’因为它处于只读状态。” 与没有ControlTemplate的库存按钮一样,它可以很好地工作。 这是我的代码。 (XAML) Change Theme 这是我的C#代码 private void ChangeTheme_Click(object sender, RoutedEventArgs e) { SolidColorBrush brush2 = (SolidColorBrush)Resources[“SolidColorBrush2”]; SolidColorBrush brush3 = (SolidColorBrush)Resources[“SolidColorBrush3”]; brush2.Color = Color.FromArgb(255, 200, 200, 200); brush3.Color = Color.FromArgb(255, 251, 132, 61); } 而错误:

替换WPF中的部分默认模板

是否有任何“最佳实践”方法来替换默认模板的一部分。 当前的用例是树视图。 默认情况下,树视图具有这种小三角形形状以展开和折叠。 如果我替换整个控件模板,我知道如何替换这些,如下面的代码所示。 我不确定是否有办法“保持所有默认值,只需更改XY”。 它不是一种风格,我基本上需要替换现有控件模板的一部分。 为了说明,请查看以下XAML。 第一个较小的块是我希望能够适应的相关XAML。 较大的第二和第三部分基本上是默认模板的副本,仅用于从头开始管理“已更改”部分。 有没有更好的方法来实现这一点,在下半年节省长而混乱的XAML?