Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym przykładzie pokazano, jak utworzyć styl fokusu w zasobach i zastosować ten styl do kontrolki, używając właściwości FocusVisualStyle.
Przykład
W poniższym przykładzie zdefiniowano styl, który tworzy dodatkowe komponowanie kontrolek, które ma zastosowanie tylko wtedy, gdy ta kontrolka jest skoncentrowana na klawiaturze w interfejsie użytkownika. Jest to realizowane przez zdefiniowanie stylu za pomocą ControlTemplate, a następnie odwoływanie się do tego stylu jako zasobu podczas ustawiania właściwości FocusVisualStyle.
Zewnętrzny prostokąt przypominający obramowanie znajduje się poza prostokątnym obszarem. Jeśli nie zostało inaczej zmodyfikowane, rozmiar stylu korzysta z ActualHeight i ActualWidth prostokątnej kontrolki, na której stosowany jest styl wizualizacji fokusu. W tym przykładzie ustawiono wartości ujemne dla Margin, aby obramowanie było wyświetlane nieco poza fokusem.
<Page
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
>
<Page.Resources>
<Style x:Key="MyFocusVisual">
<Setter Property="Control.Template">
<Setter.Value>
<ControlTemplate>
<Rectangle Margin="-2" StrokeThickness="1" Stroke="Red" StrokeDashArray="1 2"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Page.Resources>
<StackPanel Background="Ivory" Orientation="Horizontal">
<Canvas Width="10"/>
<Button Width="100" Height="30" FocusVisualStyle="{DynamicResource MyFocusVisual}">
Focus Here</Button>
<Canvas Width="100"/>
<Button Width="100" Height="30" FocusVisualStyle="{DynamicResource MyFocusVisual}">
Focus Here</Button>
</StackPanel>
</Page>
FocusVisualStyle jest dodatkiem do dowolnego stylu szablonu kontrolki, pochodzącego z jawnego stylu lub stylu motywu; styl podstawowy kontrolki można nadal utworzyć przez użycie ControlTemplate i przypisanie tego stylu do właściwości Style.
Style wizualizacji fokusu powinny być używane spójnie w obrębie motywu lub interfejsu użytkownika, zamiast używać innego dla każdego elementu z możliwością koncentracji uwagi. Aby uzyskać szczegółowe informacje, zobacz Stylowanie fokusu w kontrolkach i FocusVisualStyle.
Zobacz także
.NET Desktop feedback