视觉状态和触发器的区别

4

我曾经读过一篇文章,说Silverlight是WPF的子集,那么为什么在Silverlight中不使用触发器而是使用状态?这两者之间有什么区别?为什么Silverlight 3.0中不使用触发器?

2个回答

4
为什么Silverlight没有实现触发器?最终是由于资源限制。Silverlight团队在非常紧凑的交付周期内工作,并选择实现VisualStateManager而不是触发器,因为他们认为VSM提供了他们所需的大部分内容,并且比完整的WPF触发器系统成本更低。
它们之间有什么区别?触发器由模板设计者控制:它们允许(例如)按钮模板的设计者考虑他们感兴趣的任何疯狂的UI状态。状态由控件作者控制:控件作者必须预测对于控件的显示重要的事件,并将其组装成状态。
这篇文章进一步阐述了它们之间的区别:该文章主张采用触发器方法,但John Gossman和Christian Schormann的评论则支持使用状态方法。

0
因为Silverlight是WPF的子集,所以SL不具备此功能,就像它缺少许多其他功能一样。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接