Désactiver la selection automatique dans une listBox [Résolu]

cs_bricelt 2 Messages postés mardi 24 février 2009Date d'inscription 2 février 2011 Dernière intervention - 2 févr. 2011 à 15:38 - Dernière réponse : cs_bricelt 2 Messages postés mardi 24 février 2009Date d'inscription 2 février 2011 Dernière intervention
- 2 févr. 2011 à 20:08
Bonjour à tous,

Je développe une application sur un scanner de code barre.

Mon problème est que lorsque le focus est sur une listBox et que je scan un code barre (qui est interprété comme une saisie au clavier) la liste sélectionne la ligne qui commence par le dernier caractère du code barre (comme si je l'aurais saisi au clavier).

ma question est : y a-t-il un moyen d'empêcher la listBox de changer la ligne sélectionnée lorsqu'elle reçoit une saisie?

Le scanner est un pocket PC et mon logiciel est en C# (framework .NET 2.0)

Merci
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
cs_bricelt 2 Messages postés mardi 24 février 2009Date d'inscription 2 février 2011 Dernière intervention - 2 févr. 2011 à 20:08
3
Merci
Salut Vagg,

Merci pour avoir répondu.

C'est un pocketPC datalogic Kayman.

l'application est en C# je la développe dans Visual studio 2008.

j'ai télécharger et installé le SDK pour mon pocket. Losque je scan ça déclenche un évènement, je récupère le code barre et je l'envoie dans une List de string lié par un BindingSource à ma listBox. Ça peut semblé compliqué mais le problème n'est pas là.

Le problème est que kan je scan si ma listBox est sélectionnée il change d'item sélectionné (comme si je tapais le codeBar au clavier). C'est un comportement normal d'une listBox.

Je voulais que la listBox ne réagisse pas aux entrées du clavier (ou du scan en l'occurrence)

J'ai finalement trouvé une solution a mon problème. Sur l'event de KeyPress de ma listBox, je met l'attribut Handled à true.

private void listBoxCode_KeyPress(object sender, KeyPressEventArgs e)
{
   e.Handled = true;
}


l'évènement de "touche pressée" de la listBox est donc considéré comme traité et ne sera pas passé au sous control.

Il y a aussi la solution du e.SuppressKeyPress() sur un évènement KeyDown mais ça n'a pas l'air de fonctionné dans le framework 2.0 ou sur le pocket.

j'espère que ça aidera quelqu'un.

Bye.

Merci cs_bricelt 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 105 internautes ce mois-ci

Commenter la réponse de cs_bricelt
cs_vagg 102 Messages postés vendredi 13 juin 2008Date d'inscription 24 janvier 2013 Dernière intervention - 2 févr. 2011 à 16:43
0
Merci
Bonjour,

Peux-tu m'en dire plus sur ton PocketPC stp?
Utilise t-il un logiciel lui permettant de scanner un code barre (style: DataWedge )?

Si j'ai bien compris lorsque tu scan, ça écrit le code EAN13 (je suppose) dans ta ListBox puis passe à la ligne. C'est bien ça?
Commenter la réponse de cs_vagg

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.