代码之家  ›  专栏  ›  技术社区  ›  Asim Sajjad

视觉状态和触发器的差异

  •  3
  • Asim Sajjad  · 技术社区  · 14 年前

    我在某个地方读到过silverlight是wpf的子集,那么为什么silverlight中不使用触发器,而使用状态。这两者的区别是什么,为什么不在Silverlight3.0中使用触发器

    2 回复  |  直到 14 年前
        1
  •  3
  •   itowlson    14 年前

    为什么Silverlight中没有实现触发器?归根结底,是资源限制。Silverlight团队正致力于一个非常压缩的交付周期,并选择实现VisualStateManager而不是触发器,因为他们认为VSM交付了他们所需的大部分内容,而且实现起来要比完整的WPF触发器系统便宜得多。

    他们之间有什么区别?触发器在模板设计器的控制下:它们允许(比如说)按钮模板的设计器考虑他们感兴趣的任何疯狂ui状态。状态由控件作者控制:控件作者必须预测哪些事件对控件的显示很重要,并将这些事件组合成状态。

    This article 进一步阐述了不同之处:文章本身支持触发器方法,但是john gossman和christian schormann的评论为各州提供了理由。

        2
  •  0
  •   Ilya Smagin    14 年前

    因为silverlight是wpf的子集。SL没有这个特性,因为它没有很多其他特性。

    推荐文章