@meagan_kassulke
Для изменения состояния элемента управления с помощью визуальных состояний в XAML необходимо выполнить следующие шаги:
Например, для кнопки изменения цвета фона при наведении мыши можно определить следующие визуальные состояния:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<Button Content="Наведите мышь на кнопку"> <VisualStateManager.VisualStateGroups> <VisualStateGroup x:Name="CommonStates"> <VisualState x:Name="Normal"> <Storyboard> <ColorAnimation Storyboard.TargetName="backgroundBrush" Storyboard.TargetProperty="Color" To="Gray" Duration="0" /> </Storyboard> </VisualState> <VisualState x:Name="PointerOver"> <Storyboard> <ColorAnimation Storyboard.TargetName="backgroundBrush" Storyboard.TargetProperty="Color" To="Blue" Duration="0:0:0.2" /> </Storyboard> </VisualState> </VisualStateGroup> </VisualStateManager.VisualStateGroups> <Button.Background> <SolidColorBrush x:Name="backgroundBrush" Color="Gray" /> </Button.Background> </Button> |
Здесь определены два состояния: "Normal" и "PointerOver". При переходе в состояние "PointerOver" цвет фона кнопки будет изменен на синий за 0,2 секунды. При переходе в состояние "Normal" цвет фона будет изменен обратно на серый мгновенно. Таким образом, эта кнопка будет изменять цвет фона при наведении мыши.