Par programmation à définir le Focus à une zone de texte dans Windows Phone
Dans une application Windows Phone, j'ai un TextBox
et un Button
. L'utilisateur écrit du texte dans la zone de texte et appuie sur le Bouton, le texte de la zone de texte est ajouté à une liste. La zone de texte perd le focus après que le Bouton est actionné.
Ce que je veux faire est de définir le focus à la zone de texte après que le Bouton est actionné de sorte que l'utilisateur peut continuer d'écrire un texte sans avoir besoin de tapez sur la zone de texte.
J'ai essayé d'appeler le Focus()
méthode de la zone de texte dans le gestionnaire de Bouton mais cela ne fonctionne pas. est-il une autre, le cas échéant, la façon de le faire?
OriginalL'auteur Igor Kulman | 2013-04-12
Vous devez vous connecter pour publier un commentaire.
Lorsque le Bouton cliqué essayez d'ajouter
bollean flag = true
. Ensuite, vérifiez ce drapeau sur l'événementOnTextBoxLostFocus
.L'espoir de son aide.
j'ai édité ma réponse - essayer.
Pour une raison quelconque, le OnLostFocus est appelée deux fois. J'ai changé le drapeau d'un int et 2 dans l'événement click et puis dans OnLostFocus-je vérifier si elle est supérieure à zéro et de décrémentation id 1. Étrange, mais fonctionne maintenant.
a été heureux de vous aider.
OriginalL'auteur jimpanzer
Même j'ai essayé avec beaucoup de solutions mais aucune n'a fonctionné pour moi aussi suis en train d'essayer de se concentrer sur chargement de la page. J'ai finalement trouvé cette solution et cela a fonctionné.
bon, peut-être certains l'on va travailler autour de cette question.
OriginalL'auteur Balasubramani M
J'ai essayé beaucoup de solutions, mais c'est le seul qui fonctionne pour moi (Windows Phone 8.1 app).
Première prise de votre zone de texte du
Loaded
événement, puis d'appelerFocus(FocusState.Keyboard)
.OriginalL'auteur lccmpn
Ce qui se passe si vous l'appelez:
http://msdn.microsoft.com/en-us/library/system.windows.controls.textbox.select.aspx
Peux-tu montrer ton code? J'ai essayé sur un wp7 projet et j'ai essayé d'utiliser dans l'événement click de mon bouton d'appel myTextBox.Focus() et cela fonctionne.
pour moi, Sélectionnez() fonctionne, Focus() n'est pas valide
OriginalL'auteur Fabrice
vous pouvez accomplir cela en par programme en lui donnant le focus. Cela peut être fait par
l'appel de sa Focusmethod, bien que cet appel peut échouer (et retournera false) sous certaines conditions.
Par exemple, vous ne pouvez pas définir le focus sur un contrôle à partir d'une page du constructeur; il est trop tôt. Vous pouvez,
cependant, l'appeler à partir d'une page Loadedevent.
OriginalL'auteur techloverr
La façon dont il fonctionne le mieux pour moi sur le téléphone a été, si je voulais me concentrer sur une zone de texte lorsque la page est chargée:
ou si je le voulais, à un certain point. Il suffit de répéter ces deux lignes:
OriginalL'auteur Gustavo