IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Presentation Foundation Discussion :

[WPF] Style et snon utilisation dans differents fichiers


Sujet :

Windows Presentation Foundation

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Février 2003
    Messages
    224
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 224
    Points : 185
    Points
    185
    Par défaut [WPF] Style et snon utilisation dans differents fichiers
    Bonjour,

    J'ai défini un style comme ceci, afin de gérer mes erreurs de validation:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    <Style x:Key="validationStyle" TargetType="{x:Type Control}">
                <Setter Property="Validation.ErrorTemplate">
                    <Setter.Value>
                        <ControlTemplate>
                            <DockPanel LastChildFill="True">
                                <Border BorderBrush="Red" BorderThickness="1">
                                    <AdornedElementPlaceholder />
                                </Border>
                            </DockPanel>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
                <Style.Triggers>
                    <Trigger Property="Validation.HasError" Value="true">
                        <Setter Property="ToolTip"
                    Value="{Binding RelativeSource={RelativeSource Self}, 
                           Path=(Validation.Errors), 
                             Converter={WPFTools:ValidationErrorsToStringConverter}}"/>
                    </Trigger>
                </Style.Triggers>
            </Style>
    et je l'attribue à differents Editor d'une lib graphique externe comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <Style TargetType="{x:Type igEditors:XamComboEditor}" BasedOn="{StaticResource  WPFTools:ValidationStyle.ValidationStyle}" />
            <Style TargetType="{x:Type igEditors:XamMaskedEditor}" BasedOn="{StaticResource  WPFTools:ValidationStyle.ValidationStyle}" /
    ca donne:
    MainLayout.xaml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    <UserControl x:Class="Pension.GUI.CreatePensionPanel"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:igEditors="http://infragistics.com/Editors"
        xmlns:sys="clr-namespace:System;assembly=mscorlib"
        xmlns:WPFTools="clr-namespace:WPFTools;assembly=WPFTools"
        Width="1280" Height="1024" Background="#FFD3E1EE" FontFamily="Arial" FontSize="11" FontWeight="Bold" Foreground="#FF215A74"
        >
        <UserControl.Resources>
            <Style x:Key="validationStyle" TargetType="{x:Type Control}">
                <Setter Property="Validation.ErrorTemplate">
                    <Setter.Value>
                        <ControlTemplate>
                            <DockPanel LastChildFill="True">
                                <Border BorderBrush="Red" BorderThickness="1">
                                    <AdornedElementPlaceholder />
                                </Border>
                            </DockPanel>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
                <Style.Triggers>
                    <Trigger Property="Validation.HasError" Value="true">
                        <Setter Property="ToolTip"
                    Value="{Binding RelativeSource={RelativeSource Self}, 
                           Path=(Validation.Errors)[0].ErrorContent}"/>
                    </Trigger>
                </Style.Triggers>
            </Style>
     
            <Style TargetType="{x:Type igEditors:XamComboEditor}" BasedOn="{StaticResource validationStyle}" />
            <Style TargetType="{x:Type igEditors:XamMaskedEditor}" BasedOn="{StaticResource validationStyle}" />
        </UserControl.Resources>
    <Grid>
    ... Mon Layout
    </Grid>
    <UserControl/>
    Maintenant je voudrais que mon style soit dans un fichier XAML externe, pour pouvoir le reutiliser dans d'autres fenetres de mon appli:
    J'ai donc créer un fichier StyleValidation.xaml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
     
    <ResourceDictionary 
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:igEditors="http://infragistics.com/Editors"
        x:Class="WPFTools.ValidationStyle"
        xmlns:WPFTools="clr-namespace:WPFTools"
        >
     
        <Style x:Key="ValidationStyle" TargetType="{x:Type Control}">
            <Setter Property="Validation.ErrorTemplate">
                <Setter.Value>
                    <ControlTemplate>
                        <DockPanel LastChildFill="True">
                            <Border BorderBrush="Red" BorderThickness="1">
                                <AdornedElementPlaceholder />
                            </Border>
                        </DockPanel>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
            <Style.Triggers>
                <Trigger Property="Validation.HasError" Value="true">
                    <Setter Property="ToolTip"
                    Value="{Binding RelativeSource={RelativeSource Self}, 
                          Path=(Validation.Errors), 
                             Converter={WPFTools:ValidationErrorsToStringConverter}}"/>
                </Trigger>
            </Style.Triggers>
        </Style>
    </ResourceDictionary>
    et desormais mon MainLayout.xaml devrait ressembler à:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <UserControl x:Class="Pension.GUI.CreatePensionPanel"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:igEditors="http://infragistics.com/Editors"
        xmlns:sys="clr-namespace:System;assembly=mscorlib"
        xmlns:WPFTools="clr-namespace:WPFTools;assembly=WPFTools"
        Width="1280" Height="1024" Background="#FFD3E1EE" FontFamily="Arial" FontSize="11" FontWeight="Bold" Foreground="#FF215A74"
        >
     
    <Style TargetType="{x:Type igEditors:XamComboEditor}" BasedOn="{StaticResource  WPFTools:ValidationStyle.ValidationStyle}" />
            <Style TargetType="{x:Type igEditors:XamMaskedEditor}" BasedOn="{StaticResource  WPFTools:ValidationStyle.ValidationStyle}" /
    <Grid>
    ... Mon Layout
    </Grid>
    <UserControl/>
    Le problème c'est que ca me sort une erreur me disant que
    WPFTools:ValidationStyle.ValidationStyle n'est pas connu.
    Comment faire?
    Merci.

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Février 2003
    Messages
    224
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 224
    Points : 185
    Points
    185

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 17/03/2011, 21h42
  2. utiliser variable dans differents fichier
    Par David55 dans le forum Langage
    Réponses: 12
    Dernier message: 09/11/2010, 13h51
  3. Connaître les constantes utilisées dans un fichier Python
    Par rambc dans le forum Général Python
    Réponses: 1
    Dernier message: 20/07/2009, 13h13
  4. Réponses: 4
    Dernier message: 28/12/2007, 21h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo