Partilhar via


Estilos e modelos de janela

Este tópico descreve os estilos e modelos para o controle Window. Você pode modificar o ControlTemplate padrão para dar ao controle uma aparência exclusiva. Para obter mais informações, consulte Criar um modelo para um controle.

Peças de janela

O controle Window não tem nenhuma parte nomeada.

Estados da janela

A tabela a seguir lista os estados visuais para o controle Window.

Nome do VisualState Nome do VisualStateGroup Descrição
Válido Estados de Validação O controle usa a classe Validation e a propriedade Validation.HasError anexada é false.
FocoInválido EstadosDeValidação A propriedade Validation.HasError anexada é true tem o controle tem foco.
InválidoDesfocado Estados de Validação A propriedade anexada Validation.HasError é true que indica que o controlo não tem foco.

ControlTemplate de Janela

O exemplo a seguir é uma cópia ligeiramente modificada do modelo padrão para um controle Window:

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

    <Style x:Key="WindowStyle1" TargetType="{x:Type Window}">
        <Setter Property="Foreground"
                Value="{DynamicResource {x:Static SystemColors.WindowTextBrushKey}}"/>
        <Setter Property="Background"
                Value="{DynamicResource {x:Static SystemColors.WindowBrushKey}}"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type Window}">
                    <Border Background="{TemplateBinding Background}"
                            BorderBrush="{TemplateBinding BorderBrush}"
                            BorderThickness="{TemplateBinding BorderThickness}">
                        <AdornerDecorator>
                            <ContentPresenter/>
                        </AdornerDecorator>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
        <Style.Triggers>
            <Trigger Property="Window.ResizeMode"
                     Value="CanResizeWithGrip">
                <Setter Property="Template"
                        Value="{StaticResource WindowTemplateKey}"/>
            </Trigger>
        </Style.Triggers>
    </Style>

</ResourceDictionary>

Ver também