2009-03-30 11 views
2

Je suis en train de dupliquer le comportement suivant (WM6).Comment faire apparaître le clavier dans Windows Mobile?

Allez dans Paramètres -> À propos de -> ID de périphérique. La zone de texte Nom du périphérique obtient la mise au point, provoquant l'apparition du clavier à l'écran.

Je voudrais être en mesure de faire de même dans mon application, de préférence en code managé.

Répondre

10

Le clavier à l'écran se trouve dans l'espace de noms Microsoft.WindowsCE.Forms.

Ajoutez une référence de projet à cela et vous aurez le contrôle InputPanel disponible, ajoutez un de ceux-ci à votre formulaire puis dans votre code derrière.

private void txtField_GotFocus(object sender, EventArgs e) 
{ 
    //Enabled == show 
    inputPanel.Enabled = true; 
} 

private void txtField_LostFocus(object sender, EventArgs e) 
{ 
    inputPanel.Enabled = false; 
} 
+0

Merci, fonctionne comme un charme. Qui pourrait imaginer que le clavier s'appelait InputPanel? :) –

+0

J'ai un formulaire dans lequel ils sont n nombre de boîtes de texte, comment va activer le panneau d'entrée pour toutes les boîtes de texte? –

+0

@NKhan Vous pouvez affecter les mêmes événements txtField_GotFocus et txtField_LostFocus à l'ensemble des n zones de texte. Vous pouvez ensuite convertir l'expéditeur en TextBox pour savoir lequel il est. –

1

Je voudrais ajouter que vous devez également créer une instance de la classe Microsoft.WindowsCE.Forms.InputPanel pour votre projet (en plus d'ajouter une référence à l'espace de noms comme indiqué par TreeUK). La méthode la plus simple consiste à faire glisser un contrôle InputPanel sur votre Windows Form en mode Conception. Tout ce que vous nommez votre instance InputPanel correspond à ce que vous référencez dans les gestionnaires d'événements pour vos champs de formulaire.

Questions connexes