J'ai une fenêtre personnalisée qui a deux boutons. Un bouton est nommé OKButton et l'autre est appelé bouton Annuler.Comment rendre un élément d'un contrôle personnalisé accessible sur la vue pour l'enregistrer dans une commande?
<Style TargetType="{x:Type WindowCustom}">
"Properties Here"
<Setter.Value>
<ControlTemplate TargetType="{x:Type WindowCustom}">
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
<Button x:Name="OKButton" Content="OK"/>
<Button x:Name="CancelButton" Content="Cancel"/>
"Closing Tags"
J'ai fait une partie de modèle avec des propriétés CLR pour le « OKButton » qui obtient instancié dans la méthode OnApplyTemplate. Supposons que tout le code nécessaire pour créer une fenêtre personnalisée existe. J'ai écrit plusieurs commandes routées pour que mon OKButton fasse ce que je veux. Ce n'est pas idéal parce que ma mise en œuvre précédente du bouton utilisé une (façon de dire Caliburns commande) ActionMessage
<Button>
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<cal:ActionMessage MethodName="SaveHistoryEntry" />
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
Comment puis-je accéder à mon contrôle via XAML pour l'ajouter au message d'action? Ce que je peux faire est d'écrire le nom de mon contrôle de bouton sur la fenêtre personnalisée.
<lc:WindowCustom OKButton="">
Je ne sais pas quoi faire à partir d'ici.
Je posterai bientôt mon implémentation avec caliburn. Merci mon pote! – axelrotter