绑定到 UserControl 中声明的 Storyboard 的属性
Posted
技术标签:
【中文标题】绑定到 UserControl 中声明的 Storyboard 的属性【英文标题】:Binding to properties of Storyboard declared in UserControl 【发布时间】:2010-10-16 09:59:12 【问题描述】:我正在努力解决仅在 Window 的资源区域内声明时才有效的绑定。一旦我将声明移到 UserControl 的资源区域,绑定就会失败。没有错误消息,但是当滑块(源)的值更改时,值不会更新。我想在 UserControl 的 VSM 状态之一中使用情节提要。
谁能告诉我为什么会发生这种情况并希望如何解决它?
我尝试在此处粘贴我的 xaml,但网站不允许在消息中使用 xml 标签。
问候
贾科
【问题讨论】:
我明白了很多:问题在于情节提要的范围。似乎无法找到我在绑定语句中引用的控件(滑块)。那么为什么它适用于 Window,但不适用于 UserControl? 【参考方案1】:仅设置 Storyboard.TargetProperty(而不是 .Target 或 .TargetName)并将情节提要指向代码中的对象:
Dim SB as Storyboard = Me.FindResource("Storyboard_name_goes_here")
TargetObject.BeginStoryboard(SB, HandoffBehavior.Compose)
希望这会有所帮助...
【讨论】:
是的,这是一个非常好的建议。但是我想在 VSM 状态中使用情节提要。所以我希望 VSM 将情节提要作为过渡启动,而不是从后面的代码中手动调用它。以上是关于绑定到 UserControl 中声明的 Storyboard 的属性的主要内容,如果未能解决你的问题,请参考以下文章
绑定到包含 ItemsControl 数据的 UserControl
将 Silverlight UserControl 自定义属性绑定到其元素