如何正確定義Silverlight視覺狀態組
Silverlight作為一款比較新的開發工具,在學習的過程中,有很多新穎特殊的功能值得我們在實踐中去慢慢摸索其的應用價值。我們今天將會了解到有關Silverlight視覺狀態組的相關定義方法。#t#
我們知道,視覺狀態管理器(VisualStateManager)負責管理控件的狀態和狀態組以及狀態的遷移,所以我們所有的視覺狀態組、視覺狀態遷移、視覺狀態等都通過它來管理,在XAML定義時。
在Silverlight視覺狀態組引用VisualStateManager之前,需要先引入命名空間,這是Silverlight 2 Beta 2的一個已知Bug。如下代碼所示:
- xmlns:vsm="clr-namespace:
System.Windows;assembly=
System.Windows"
接下來我們定義Silverlight視覺狀態組,在上篇文章中我們就介紹過CheckBox的狀態組,總共有三個:FocusStates、CommonStates、CheckStates,這里我們只定義CommonStates和CheckStates狀態組,大家可以自行定義FocusStates狀態組,如下代碼所示:
- < vsm:VisualStateManager
.VisualStateGroups>- < !-- CommonStates StateGroup-->
- < vsm:VisualStateGroup
x:Name="CommonStates">- < /vsm:VisualStateGroup>
- < !-- CheckStates StateGroup-->
- < vsm:VisualStateGroup
x:Name="CheckStates">- < /vsm:VisualStateGroup>
- < /vsm:VisualStateManager
.VisualStateGroups>
這里需要為每個Silverlight視覺狀態組指定名稱,且名稱是固定的。