Bonjour,

J'ai développé une application sans gérer les styles de manière globale.

Aujourd'hui, j'ai voulu ajouter une gestion de style au niveau application, par exemple :

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
    <Application.Resources>
        <ResourceDictionary>
            <Style TargetType="{x:Type TextBox}" >
                <Setter Property="Margin" Value="5"/>
            </Style>
            <Style TargetType="{x:Type Label}">
                <Setter Property="Margin" Value="5"/>
            </Style>
            <Style TargetType="{x:Type Button}">
                <Setter Property="Margin" Value="5"/>
            </Style>
            <Style TargetType="{x:Type ListView}">
                <Setter Property="Margin" Value="5"/>
            </Style>
            <Style TargetType="{x:Type ListBox}">
                <Setter Property="Margin" Value="5"/>
            </Style>
            <Style TargetType="{x:Type ComboBox}">
                <Setter Property="Margin" Value="5"/>
            </Style>
        </ResourceDictionary>
    </Application.Resources>
Mais du coup, l'application de la propriété "Margin" se cumule avec la valeur "Margin" que j'ai indiquée un peu partout dans l'appli (explicitement pour chaque control)... donc au lieu d'avoir un margin de 5, j'ai un margin de 10...

Est-il possible de rendre cette (ces) propriété(s) non cumulative(s) ? et donc au contraire overrider la valeur du style (niveau appli) lorsque la valeur est spécifiée dans un UserControl particulier ?