C# 作为触发器的结果恢复以前的值
如果我使用的是ControlTemplate.Triggers,则由C# 作为触发器的结果恢复以前的值,c#,wpf,templates,triggers,styles,C#,Wpf,Templates,Triggers,Styles,如果我使用的是ControlTemplate.Triggers,则由 如果IsMouseOver为false,如何恢复以前的值? (例如,在IsMouseOver=true上将背景更改为绿色,并在更改前还原为以前的颜色。以前的颜色可以在控件本身上设置,而不一定在样式内部设置) 方面: 我在扳机上用的是stoaryboard 在控件样式中,我将背景设置为蓝色 在使用控件的窗口实现中,我将控件设置为样式,但将控件的背景设置为红色 我想设置动画,将其从红色变为绿色,并在IsMouseOver=fals
如果IsMouseOver为false,如何恢复以前的值? (例如,在
IsMouseOver=true
上将背景更改为绿色,并在更改前还原为以前的颜色。以前的颜色可以在控件本身上设置,而不一定在样式内部设置)
方面:
请帮帮我 触发器不会永久更改该值,它们可以是活动的,也可以是非活动的,如果它们处于非活动状态,则会自动获取以前的值(根据) 模板触发器不会覆盖本地值,因此必须使用setter作为默认值
当您使用将覆盖所有其他内容的动画时,您可以通过
触发器.ExitActions
,,但是您需要知道原始值。我忘了指定我正在使用情节提要,这就是问题的原因。没有办法恢复到实际控件定义中设置的原始值吗?(示例-使用此控件的网格。控件将使用样式X在网格中定义,并且控件属性中的背景将设置为红色,但默认样式为蓝色。我想在上面的场景中将其还原为红色。)@user436862:动画场景很麻烦,您可以在设置的模板颜色和透明之间设置另一层的动画,然后您的单个背景可以始终相同。