2010-12-03 8 views
1

Je veux avoir le focus dans mon TextBox après avoir double-cliqué.Comment puis-je définir le focus d'un TextBox dans WPF

J'essaie simplement:

myTextBox.Focus() 

Le caret apparaît cependant il ne clignote pas, et personne ne peut entrer dans la zone de texte. Quelle est la bonne façon de régler la mise au point de l'entrée au clavier sur un TextBox?

+1

il devrait être En cliquant assez pour le rendre ... à moins concentré il est désactivé bien sûr –

+0

@Thomas, oui il obtient le focus, mais le caret ne clignote pas et je ne peux pas l'entrée de texte. Des idées? – Jamie

+1

Avez-vous défini 'IsReadOnly' par hasard? –

Répondre

1

Old question, mais il a été le premier à venir dans une recherche et je ne vois pas une réponse valide, donc en poster un.

Le problème est probablement que votre TextBox a le focus logique, mais pas le focus du clavier. Le focus logique est défini par portée, et WPF vous permet d'avoir plusieurs Focus Scopes dans votre application, de sorte que plusieurs contrôles peuvent être concentrés logiquement, cependant un seul contrôle dans votre application peut avoir Keyboard Focus.

myTextBox.Focus();   // Will set Logical Focus for myTextBox's Focus Scope 
Keyboard.Focus(myTextBox); // Will set Keyboard Focus to myTextBox 
+0

Merci, votre message m'a conduit à trouver cet article qui explique en profondeur les concepts que vous décrivez: http://msdn.microsoft.com/en-us/library/aa969768(v=vs.110).aspx. – Nate