Je veux désactiver tous les raccourcis par défaut dans WPF TextBox. Raccourcis comme Ctrl +A, Ctrl +V, Ctrl +C etc. Cela peut-il faire ?. Il me semble que ces raccourcis sont exécutés avant KeyDown
événementComment désactiver les raccourcis dans WPF TextBox
Répondre
Vous pouvez intercepter les séquences de touches dans l'événement PreviewKeyDown
. Définissez le membre e.Handled
sur true
et cela empêchera le traitement réel des clés.
Merci. C'est juste au point. Jamais vu cet aperçu avant –
Cela ne fonctionnera que pour les frappes. Que faire si la commande est invoquée via le menu contextuel? Ou le menu de l'application? –
@Kent, je * crois * qui passe par les commandes WPF. Je ne suis pas familier avec leur mise en œuvre et je ne peux pas fournir de commentaires utiles sur la façon dont cela fonctionnerait. Bien que j'aimerais voir quelqu'un le faire. – JaredPar
public Window1()
{
InitializeComponent();
CommandManager.AddPreviewCanExecuteHandler(_textBox, _canExecute);
}
private void _canExecute(object sender, CanExecuteRoutedEventArgs e)
{
e.CanExecute = false;
e.Handled = true;
}
Le ci-dessus va empêcher la TextBox de dire qu'il peut gérer toute commande . Vous pouvez choisir sélectivement quelles commandes vous voulez désactiver en examinant le EventArgs
. Ou vous pouvez le faire en XAML:
<TextBox x:Name="_textBox">
<TextBox.CommandBindings>
<CommandBinding Command="ApplicationCommands.Copy" CanExecute="_canExecute"/>
</TextBox.CommandBindings>
</TextBox>
Ici, nous ne faisons que désactiver l'exécution de la commande Copier. Control-C ne fonctionnera pas, pas plus que le menu contextuel ou le menu principal. En fait, tout contrôle qui exécute la commande Copier sera désactivé si le focus est dans TextBox
.
- 1. WPF/C#: désactiver le glisser-déposer pour les TextBox?
- 2. Comment désactiver les raccourcis clavier dans Dojo StackContainer
- 3. Sharepoint 2007: Comment désactiver TextBox
- 4. WPF: incorporation de TextBox dans TextBox
- 5. Raccourcis clavier dans un XBAP
- 6. asp.net MVC: désactiver un TextBox
- 7. WPF Custom TextBox
- 8. Création de raccourcis clavier «globaux» dans WPF
- 9. WPF TextBox Overwrite
- 10. WPF: TextBox avec ProgressBar
- 11. Comment désactiver les effets MouseOver sur un bouton dans WPF?
- 12. Comment désactiver les événements de changement d'apparence dans WPF?
- 13. WPF - Afficher Textbox infobulle
- 14. wpf textbox textwrapping
- 15. Set accent sur textbox dans WPF
- 16. Curseur Focus sur Textbox dans WPF/C#
- 17. Problème avec TextBox Focus dans WPF
- 18. Désactiver retour arrière dans wpf
- 19. Comment désactiver les objets Combobox?
- 20. WPF Toolkit Datagrid - comment désactiver la sélection?
- 21. Comment conserver les raccourcis d'application actuels/synchronisés?
- 22. Comment gérer les raccourcis clavier contradictoires
- 23. WPF filigrane PasswordBox de filigrane TextBox
- 24. Liaison de plusieurs TextBox à une structure dans WPF
- 25. wpf: Sélection du texte dans TextBox avec IsReadOnly = true?
- 26. changement Programmatically règle de validation dans WPF TextBox
- 27. Annulation d'un événement WPF TextBox modifié
- 28. WPF UserControl - ne peut pas sélectionner TextBox
- 29. WPF DataGrid Bouton Colonne Désactiver
- 30. WPF SystemColors: couleur de la bordure TextBox
Par curiosité: Pourquoi? –
Parce que je fais un contrôle qui permet à l'utilisateur de spécifier un raccourci qu'il veut utiliser pour une action. Et bien sûr, je n'ai pas besoin de tout sélectionner sur Ctrl + A, mais je voudrais simplement l'afficher –
Ah. Je m'attendrais à ce que WPF fournisse un contrôle qui a déjà fait quelque chose de similaire. Merci pour l'info. –