/ / Comment utiliser la même barre d'outils dans les onglets du ruban WPF? - wpf, xaml, ruban

Comment utiliser la même barre d'outils dans les onglets du ruban WPF? - wpf, xaml, ruban

Je suis nouveau sur WPF et je jouais avec le rubancontrôle. J'ai trois onglets de ruban différents, comme indiqué dans le code ci-dessous. J'utilise les mêmes boutons de barre de péage. La façon dont j'ai écrit, comme indiqué ci-dessous, ne semble pas être une approche optimale de la mémoire. Quelqu'un peut-il aider à modifier le code afin que je puisse utiliser la même barre d'outils sans répétition dans tous les onglets du ruban?

        <ribbon:RibbonTab x:Name="HomeTab"
Header="Home">
<ribbon:RibbonGroup x:Name="Group1"
Header="">
<ribbon:RibbonButton x:Name="Update1"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Update" />
<ribbon:RibbonButton x:Name="Register1"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Register" />
<ribbon:RibbonButton x:Name="Uninstall1"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Uninstall"  />
<ribbon:RibbonButton x:Name="Invisible1"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Go invisible" Click="Invisible_Click"/>
<ribbon:RibbonButton x:Name="Help1"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Help" />
<ribbon:RibbonButton x:Name="Quit1"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Quit" Click="Quit_Click"/>
</ribbon:RibbonGroup>

</ribbon:RibbonTab>
<ribbon:RibbonTab x:Name="LogTab"
Header="Log History">
<ribbon:RibbonGroup x:Name="Group11"
Header="">
<ribbon:RibbonButton x:Name="Update2"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Update" />

<ribbon:RibbonButton x:Name="Regiter2"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Register" />
<ribbon:RibbonButton x:Name="Uninstall2"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Uninstall" />
<ribbon:RibbonButton x:Name="Invisible2"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Go invisible" Click="Invisible_Click"/>
<ribbon:RibbonButton x:Name="Help2"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Help" />
<ribbon:RibbonButton x:Name="Quit2"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Quit" Click="Quit_Click" />
</ribbon:RibbonGroup>

</ribbon:RibbonTab>
<ribbon:RibbonTab x:Name="SettingsTab"
Header="Settings">
<ribbon:RibbonGroup x:Name="Group21"
Header="">
<ribbon:RibbonButton x:Name="Update3"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Update" />

<ribbon:RibbonButton x:Name="Register3"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Register" />
<ribbon:RibbonButton x:Name="Uninstall3"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Uninstall" />
<ribbon:RibbonButton x:Name="Invisible3"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Go invisible" Click="Invisible_Click" />
<ribbon:RibbonButton x:Name="Help3"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Help" />
<ribbon:RibbonButton x:Name="Quit3"
LargeImageSource="/T-Spy;component/Resources/favicon.ico"
Label="Quit"  Click="Quit_Click"/>
</ribbon:RibbonGroup>

</ribbon:RibbonTab>

Réponses:

0 pour la réponse № 1

Pourquoi ne pas simplement créer un UserControl avec un type de base de ruban: RibbonGroup, puis déposez-le dans chaque section au besoin? Ensuite, vous avez le contexte unique de chaque contrôle afin qu'il n'y ait pas de conflits.

Toute manipulation de propriété doit être gérée avec les propriétés de dépendance.