【发布时间】:2012-02-02 13:41:14
【问题描述】:
我在设计时应用了故事板动画来更改堆栈面板的宽度。但是,当我在单击按钮时明确更改相同控件的宽度时,其宽度不会发生变化。 当我在设计时不应用任何故事板时,宽度更改就会起作用。
有没有办法从面板控件中删除情节提要绑定,并在我想要单击按钮时应用相同的绑定。
谢谢
【问题讨论】:
标签: wpf storyboard
我在设计时应用了故事板动画来更改堆栈面板的宽度。但是,当我在单击按钮时明确更改相同控件的宽度时,其宽度不会发生变化。 当我在设计时不应用任何故事板时,宽度更改就会起作用。
有没有办法从面板控件中删除情节提要绑定,并在我想要单击按钮时应用相同的绑定。
谢谢
【问题讨论】:
标签: wpf storyboard
DependencyPropertys 以不同的优先级对来自不同来源的更改请求做出反应。您可以在 MSDN 上的 Dependency Property Value Precedence 文章中找到更多信息。在您的情况下,从 Animation 对象发送的对 StackPanel.Width DependencyProperty 的更改请求会覆盖在 Trigger Setter 对象中所做的任何更改。
最简单的做法是在更改StackPanel.Width 之前暂停或停止Button.Click 处理程序中的Storyboard。请参阅处理类似情况的this post。您可以在 MSDN Storyboard.Pause Method 文章中找到更多信息。
【讨论】: