WEB开发网
开发学院图形图像Flash 谈谈Silverlight 2中的视觉状态管理 Part1 阅读

谈谈Silverlight 2中的视觉状态管理 Part1

 2008-10-09 11:40:15 来源:WEB开发网   
核心提示: 默认状态下,CheckBox控件将显示为Normal状态;当CheckBox被选中时,谈谈Silverlight 2中的视觉状态管理 Part1(2),它将显示为Checked状态;当Checked为null,CheckBox将显示为Indeterminate状态,所谓的互斥是指控件不肯

谈谈Silverlight 2中的视觉状态管理 Part1

默认状态下,CheckBox控件将显示为Normal状态;当CheckBox被选中时,它将显示为Checked状态;当Checked为null,CheckBox将显示为Indeterminate状态。

控件的视觉状态在Silverlight 2中会使用VisualState类来表示,它的定义非常简单如下代码所示:

public sealed class VisualState : DependencyObject
{
  public VisualState();
  public string Name { get; }
  public Storyboard Storyboard { get; set; }
}
状态迁移(State Transitions)

状态迁移是指控件从一个状态过渡到另外一个状态,如Button控件从MouseOver状态到Pressed状态这个过渡过程,通过Storyboard来定义的动画。

谈谈Silverlight 2中的视觉状态管理 Part1

状态迁移在Silverlight 2中使用VisualTransition类来表示,它的定义如下代码所示:

public class VisualTransition
{
  public VisualTransition();
  public Duration Duration { get; set; }
  public string From { get; set; }
  public Storyboard Storyboard { get; set; }
  public string To { get; set; }
}
状态组(StateGroups)

状态组,是把控件所有互斥的状态放在同一个组中,这样一个状态它只能位于一个组中,所谓的互斥是指控件不肯能同时具有该组中的两种状态,如Checked和Unchecked两个状态不可能同时存在。以CheckBox控件为例,我们来看一下它的状态组:

Tags:谈谈 Silverlight 视觉

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接