VisualState Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет внешний вид элемента управления, когда он находится в определенном состоянии.
public ref class VisualState : System::Windows::DependencyObject
[System.Windows.Markup.ContentProperty("Storyboard")]
[System.Windows.Markup.RuntimeNameProperty("Name")]
public class VisualState : System.Windows.DependencyObject
[<System.Windows.Markup.ContentProperty("Storyboard")>]
[<System.Windows.Markup.RuntimeNameProperty("Name")>]
type VisualState = class
inherit DependencyObject
Public Class VisualState
Inherits DependencyObject
- Наследование
- Атрибуты
Примеры
В следующем примере создается VisualStateGroup в ControlTemplateButton с именем CommonStates
и добавляются объекты VisualState для состояний, Normal
, Pressed
и MouseOver
. В Button также определяется состояние, называемое Disabled
, которое находится в CommonStates
VisualStateGroup, но в примере он не используется для краткости. Полный пример см. в настройке внешнего вида существующего элемента управления путем созданияcontrolTemplate.
<!--Define the states and transitions for the common states.
The states in the VisualStateGroup are mutually exclusive to
each other.-->
<VisualStateGroup x:Name="CommonStates">
<!--The Normal state is the state the button is in
when it is not in another state from this VisualStateGroup.-->
<VisualState x:Name="Normal" />
<!--Change the SolidColorBrush, BorderBrush, to red when the
mouse is over the button.-->
<VisualState x:Name="MouseOver">
<Storyboard>
<ColorAnimation Storyboard.TargetName="BorderBrush"
Storyboard.TargetProperty="Color"
To="Red" />
</Storyboard>
</VisualState>
<!--Change the SolidColorBrush, BorderBrush, to Transparent when the
button is pressed.-->
<VisualState x:Name="Pressed">
<Storyboard>
<ColorAnimation Storyboard.TargetName="BorderBrush"
Storyboard.TargetProperty="Color"
To="Transparent"/>
</Storyboard>
</VisualState>
<!--The Disabled state is omitted for brevity.-->
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
Комментарии
VisualState указывает, как элемент управления выглядит, когда он находится в определенном состоянии. Например, при нажатии Button его граница может отличаться от обычного цвета. Класс VisualState имеет свойство Storyboard, которое изменяет внешний вид элемента управления. Когда элемент управления вводит состояние, указанное свойством VisualState.Name, начинается Storyboard. Когда элемент управления выходит из состояния, Storyboard останавливается.
Свойство VisualStateGroup.States содержит объекты VisualState. VisualStateGroup объекты добавляются в присоединенное свойство VisualStateManager.VisualStateGroups, которое определяется на FrameworkElement. Вы можете добавлять объекты VisualState в любой FrameworkElement, но обычно они используются в ControlTemplateControl. Сведения о создании ControlTemplate и VisualState объектов для существующих элементов управления см. в настройке внешнего вида существующего элемента управления путем созданияControlTemplate. Пример использования объектов VisualState за пределами ControlTemplateсм. в классе VisualStateManager.
Конструкторы
VisualState() |
Инициализирует новый экземпляр класса VisualState. |
Свойства
DependencyObjectType |
Возвращает DependencyObjectType, который упаковывает тип СРЕДЫ CLR этого экземпляра. (Унаследовано от DependencyObject) |
Dispatcher |
Возвращает Dispatcher, с которым связан этот DispatcherObject. (Унаследовано от DispatcherObject) |
IsSealed |
Возвращает значение, указывающее, запечатан ли этот экземпляр (только для чтения). (Унаследовано от DependencyObject) |
Name |
Возвращает или задает имя VisualState. |
Storyboard |
Возвращает или задает Storyboard, определяющий внешний вид элемента управления, когда он находится в состоянии, представленном VisualState. |
Методы
CheckAccess() |
Определяет, имеет ли вызывающий поток доступ к этому DispatcherObject. (Унаследовано от DispatcherObject) |
ClearValue(DependencyProperty) |
Очищает локальное значение свойства. Свойство для очистки указывается идентификатором DependencyProperty. (Унаследовано от DependencyObject) |
ClearValue(DependencyPropertyKey) |
Очищает локальное значение свойства только для чтения. Свойство для очистки указывается DependencyPropertyKey. (Унаследовано от DependencyObject) |
CoerceValue(DependencyProperty) |
Принуждает значение указанного свойства зависимостей. Это достигается путем вызова любой функции CoerceValueCallback, указанной в метаданных свойства для свойства зависимостей, так как он существует в вызывающей DependencyObject. (Унаследовано от DependencyObject) |
Equals(Object) |
Определяет, эквивалентен ли предоставленный DependencyObject текущему DependencyObject. (Унаследовано от DependencyObject) |
GetHashCode() |
Возвращает хэш-код для этого DependencyObject. (Унаследовано от DependencyObject) |
GetLocalValueEnumerator() |
Создает специализированный перечислитель для определения того, какие свойства зависимостей имеют локальные значения для этого DependencyObject. (Унаследовано от DependencyObject) |
GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
GetValue(DependencyProperty) |
Возвращает текущее эффективное значение свойства зависимостей для этого экземпляра DependencyObject. (Унаследовано от DependencyObject) |
InvalidateProperty(DependencyProperty) |
Повторно вычисляет эффективное значение для указанного свойства зависимостей. (Унаследовано от DependencyObject) |
MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Вызывается при каждом обновлении эффективного значения любого свойства зависимостей в этом DependencyObject. Определенное свойство зависимостей, которое изменилось, сообщается в данных события. (Унаследовано от DependencyObject) |
ReadLocalValue(DependencyProperty) |
Возвращает локальное значение свойства зависимостей, если оно существует. (Унаследовано от DependencyObject) |
SetCurrentValue(DependencyProperty, Object) |
Задает значение свойства зависимостей, не изменяя его источник значений. (Унаследовано от DependencyObject) |
SetValue(DependencyProperty, Object) |
Задает локальное значение свойства зависимостей, указанное его идентификатором свойства зависимостей. (Унаследовано от DependencyObject) |
SetValue(DependencyPropertyKey, Object) |
Задает локальное значение свойства зависимостей только для чтения, указанное идентификатором DependencyPropertyKey свойства зависимостей. (Унаследовано от DependencyObject) |
ShouldSerializeProperty(DependencyProperty) |
Возвращает значение, указывающее, должны ли процессы сериализации сериализовать значение для указанного свойства зависимостей. (Унаследовано от DependencyObject) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
VerifyAccess() |
Принудительно применяет доступ к этому DispatcherObjectвызываемого потока. (Унаследовано от DispatcherObject) |