如何从WPF中的代码修改setter

时间:2016-07-22 09:28:37

标签: c# wpf styles

我试图在我的WPF应用程序中为了某些内部目的而在代码后面单独修改一个背景属性,在尝试将新的setter添加到我们使用的样式时抛出错误

After a 'SetterBase' is in use (sealed), it cannot be modified.

我该如何解决这个问题?

提前致谢

1 个答案:

答案 0 :(得分:0)

如果您有以下内容:

<Setter Property="Button.Background" Value="Red" />

可以使用后面的代码替换它。在C#中,它看起来像这样:

var setter = new Setter
{
  Property = Button.BackgroundProperty,
  Value = "red",
};

或者,使用绑定:

Value = new Binding("BackgoundColour"),

其中BackgroundColour是变量。

我不确定基座是否密封时是否有效,但尝试一下。