如何在文本框样式数据触发器中更改文本框样式?

时间:2009-05-15 01:19:28

标签: wpf textbox styles

我为我的文本框控件创建了一个默认样式,但我希望能够在运行时更改样式。

我有一个我要绑定的属性,如果数据是强制性的,则通知UI,我希望能够将文本框的样式更改为另一种在文本框下面显示红线的样式。我不能在我创建的标准文本框样式中使用它,因为每个文本框的属性都不同,即IsEmailMandatory,isNameMandatory。

我试图为我拥有的每个文本框以文本框的样式绑定数据触发器,但是我收到一条消息,告诉我我无法更改样式中的样式。那我该怎么做?

1 个答案:

答案 0 :(得分:0)

您无需更改触发器中的整个样式,只需更改模板。

实现类似功能的另一种方法是使用附加属性。假设IsEmailMandatory,isNameMandatory属性在DataContext上而不是控件本身,则可以将所需的值绑定到附加属性,然后以默认样式触发该属性。