Bonjour à tous,

je galère un peu avec WPF qui est nouveau pour moi. Voila ma question :

Je souhaite que certains item (MenuItem) n'apparaisse que si mon utilisateur à les droit d'admin (Définit dans une table MySQL ou que si un utilisateur est connecté ).

les droit d'admin sont défini par ma classe User qui a pour variable IdTypeUser. cette variable est accessible depuis ma MainWindow.

Donc dans mon xaml de mes fenetres je veux que tout les controls ayant par exemple un Style="{StaticResource uniquementAdmin}" ne soit visible par ces admins.

Je pense ne pas avoir très bine compris comment fonctionne le databinding a ce niveau.
Voila à ou j'en suis mais forcement ca ne marche pas... :

Une idée ?


Code xml : 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
<Style   x:Key="uniquementAdmin" TargetType="Control">
        <Style.Triggers>
            <MultiDataTrigger>
                <MultiDataTrigger.Conditions>
                    <Condition Binding="{Binding Path=isUserConnect}" Value="True"/>
                    <Condition Binding="{Binding Path=User.IdTypeUser}" Value="2"/>
                </MultiDataTrigger.Conditions>
                <Setter Property="Visibility" Value="Visible" />
            </MultiDataTrigger>
            <MultiDataTrigger>
                <MultiDataTrigger.Conditions>
                    <Condition Binding="{Binding Path=isUserConnect}" Value="True"/>
                    <Condition Binding="{Binding Path=User.IdTypeUser}" Value="1"/>
                </MultiDataTrigger.Conditions>
                <Setter Property="Visibility" Value="Hidden" />
            </MultiDataTrigger>
            <MultiDataTrigger>
                <MultiDataTrigger.Conditions>
                    <Condition Binding="{Binding Path=isUserConnect}" Value="True"/>
                    <Condition Binding="{Binding Path=User.IdTypeUser}" Value="3"/>
                </MultiDataTrigger.Conditions>
                <Setter Property="Visibility" Value="Hidden" />
            </MultiDataTrigger>
            <DataTrigger Binding="{Binding Path=isUserConnect}"  Value="False">
                <Setter Property="Visibility" Value="Hidden" />
            </DataTrigger>
        </Style.Triggers>
    </Style>


Merci !