J'ai WPF ComboBox à l'intérieur d'un modèle de données (beaucoup de comboboxes dans la zone de liste) et je veux gérer le bouton Entrée. Ce serait facile si c'était par ex. un bouton - J'utiliserais Command + Relative path path etc. Malheureusement, je n'ai aucune idée de la façon dont je peux manipuler une touche avec une commande ou comment définir un gestionnaire d'événement à partir d'un template. Des suggestions?Gestionnaire d'événements dans DataTemplate
9
A
Répondre
4
J'ai résolu mon problème en utilisant un gestionnaire d'événements habituel où je marche dans l'arborescence visuelle, trouve le bouton correspondant et appelle sa commande. Si quelqu'un d'autre a le même problème, s'il vous plaît poster un commentaire et je vais fournir plus de détails de réalisation.
UPD
Voici ma solution:
Je recherche l'arbre visuel pour un bouton et que exécuter la commande associée à bouton.
View.xaml:
<ComboBox KeyDown="ComboBox_KeyDown"/>
<Button Command="{Binding AddResourceCommand}"/>
View.xaml.cs:
private void ComboBox_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Enter)
{
var parent = VisualTreeHelper.GetParent((DependencyObject)sender);
int childrenCount = VisualTreeHelper.GetChildrenCount(parent);
for (int i = 0; i < childrenCount; i++)
{
var child = VisualTreeHelper.GetChild(parent, i) as Button;
if (null != child)
{
child.Command.Execute(null);
}
}
}
}
10
Vous pouvez utiliser le EventSetter dans le style que vous définissez le modèle avec:
<Style TargetType="{x:Type ListBoxItem}">
<EventSetter Event="MouseWheel" Handler="GroupListBox_MouseWheel" />
<Setter Property="Template" ... />
</Style>
0
Cet article a un moyen d'acheminer Event
à Command
http://nerobrain.blogspot.nl/2012/01/wpf-events-to-command.html
Questions connexes
- 1. Comment ajouter gestionnaire dans DataTemplate dynamique
- 2. Attacher un gestionnaire d'événements à un DataTemplate généré par code
- 3. Comment connecter un bouton dans un Silverlight ListItem DataTemplate, dans un ResourceDictionary (Styles.xaml), avec un gestionnaire?
- 4. Dynamic Datatemplate dans WPF
- 5. Reliure ContextMenu dans DataTemplate
- 6. WPF - Commande dans un objet MenuItem dans un DataTemplate
- 7. Problèmes de liaison dans DataTemplate
- 8. Wpf DataTemplate
- 9. datatemplate liant
- 10. Problèmes ListBox PreviewMouseLeftButtonDown avec DataTemplate
- 11. DataTemplate + MVVM
- 12. WPF design UserControl/DataTemplate problème
- 13. DataTemplate/ContentTemplate - contrôles d'échange
- 14. Dynamique DataTemplate commutation
- 15. WPF, UserControl ou DataTemplate
- 16. DataTemplate utilisation DataType WPF
- 17. Commande WPF datatemplate
- 18. DataTemplate dynamique avec valueconverter
- 19. Silverlight 4.0: erreur DataTemplate
- 20. WPF - Question DataTemplate
- 21. Réutilisation de DataTemplate
- 22. ListView DataTemplate liaison
- 23. Silverlight dans le code DataTemplate NameSpace Erreur
- 24. Comment afficher un DataTemplate dans la fenêtre
- 25. Comment ajouter DataTemplate dans les ressources?
- 26. Code-behind pour DataTemplate défini dans ResourceDictionary
- 27. Silverlight 3 Liaison d'éléments dans un datatemplate
- 28. Puis-je accéder à DataTemplate dans codebehind
- 29. Commande Binding dans le datatemplate hiérarchique
- 30. Silverlight DataTemplate "Nom", comment utiliser dans codebehind?