J'ai créé une barre d'outils qui comporte trois contrôles. Le premier étant une zone de texte, un bouton OK et un bouton Effacer. Essentiellement, j'utilise cette barre d'outils pour rechercher du texte. Quand il n'y a aucun résultat trouvé, j'ouvre une boîte de message informant l'utilisateur qu'aucun résultat n'a été trouvé. Mais lorsque l'utilisateur clique sur le bouton "OK" de la boîte de message, la zone de texte perd le focus et le focus passe au contrôle suivant qui est le bouton "OK". Que dois-je faire pour éviter la zone de texte pour perdre le focus. J'utilise C#.La boîte de message provoque une perte de focus
1
A
Répondre
2
Vous ne pouvez pas. Cliquer sur le bouton Ok le force à avoir le contrôle (et donc la zone de texte perd le contrôle).
Vous pouvez cependant faire sur votre événement click:
MessageBox.Show("asdf");
textBox1.Focus();
EDIT
En réponse à votre commentaire, je ne pense pas qu'il y ait un moyen facile de Repassez le dernier contrôle une fois qu'un autre contrôle a reçu le focus, et les boutons de recherche et d'effacement devront recevoir le focus quand on clique dessus. Vous pouvez le faire:
private Control _last;
private void textBox1_Leave(object sender, EventArgs e)
{
_last = (Control) sender;
}
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show("asdf");
_last.Focus();
}
0
Il est pas très clair à votre question, mais vous pouvez faire votre commande prendre l'accent comme ceci:
textBox1.Focus();
Questions connexes
- 1. Détecter la perte de focus du clavier dans une application Silverlight
- 2. Boîte de message en Python
- 3. Boîte de dialogue Message/Confirmer
- 4. WPF ListViewItem événement de perte de focus - Comment se rendre à l'événement?
- 5. C# Winforms Propriétés de la boîte de message
- 6. Comment basculer confirmer la boîte de message de aspx.cs page
- 7. affiche une boîte de message lorsque l'utilisateur ferme IE
- 8. Afficher une boîte de message d'une classe dans C#?
- 9. Win32: Boîte de dialogue modale ne renvoyant pas le focus
- 10. ce qui est la boîte de message dans asp.net
- 11. La libération de NSData provoque une exception
- 12. Problème de boîte de dialogue de message C++ Builder 2007
- 13. Comment détecter une perte de données irrécupérable lors de l'utilisation de la multidiffusion de MSMQ?
- 14. Événement .NET pour la perte et la mise au point de l'application
- 15. Perte de données SerialPort - C#
- 16. Est-il possible de créer une boîte de message qui affiche le contenu html?
- 17. Comment créer une fenêtre Qt se comporter comme une boîte de message?
- 18. Masquage de la boîte de dialogue au démarrage pour une application de la barre d'état système
- 19. La boîte de message est-elle incorrecte dans la classe affaires?
- 20. La journalisation provoque-t-elle une rupture de l'analyse XML?
- 21. Exception de changement de focus avec la touche de tabulation dans une application .NET
- 22. Problème de perte de valeur de temps?
- 23. Récupérer le message de la boîte de réception du serveur Exchange en utilisant .net
- 24. La création de NHibernate SQL provoque une erreur
- 25. Comment "actualiser" une fenêtre dans IE sans le focus de vol de la fenêtre?
- 26. Existe-t-il une boîte de message AJAX NON-MODEL dans ASP.NET Web Control?
- 27. Vous effectuez une transformation NSMutableString sans perte de mémoire?
- 28. Appel .focus() sur un champ de texte au cours d'une boîte de dialogue avec-onglets charge jquery-ui casse la boîte de dialogue de rendu
- 29. Emacs focus de souris coincé dans une image
- 30. Comment afficher une boîte de message en C# en tant que modal système?
Merci pour la réponse. Je me demandais s'il y avait un moyen de résoudre ce problème sans définir le focus de la zone de texte explicitement. –