IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

Intercepter "Enter" sur DatagridView


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut Intercepter "Enter" sur DatagridView
    Bonjour

    Je ne parviens pas a intercepter la Key "Enter" pendant l'edition d'une cellule d'un DGV

    J'ai essayé de faire ceci
    Curieusement chaque caractére tappé est intercepté SAUF le "Enter"
    Ou est l'erreur ?

    Merci de votre aide

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
       // ***********************************************************************************
        // = Events =
        private void DgvKeys_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
        {
          DgvKeys.EditingControl.KeyDown += DgvKeys_KeyDown;
        }
     
        private void DgvKeys_KeyDown(object sender, KeyEventArgs e)
        {
          if (e.KeyCode == Keys.Enter)
          {
            e.Handled = true; ;
            DoSearch();
          }
        }

  2. #2
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Vu sur le web : However, if the key stroke is the Enter key, the default behavior is that the cell below becomes the current cell, which is not in edit mode, so the key up Windows message is captured by the DataGridView and the KeyUp event is raised in turn.
    Pour contourner, essaye l'event KeyPress en plus de KeyDown.

  3. #3
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Bien vu !

    *!£%€

  4. #4
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Salut

    Pour contourner, finalement il suffit de tester KeyUp et plus besoin de traiter
    DgvKeys_EditingControlShowing

    Merci !

  5. #5
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Pour les Gurus du dataGriview

    J'ai un Datagriview avec 3 combo.
    Dans celui la, l'event KeyUP ou KeyDown n'est JAMAIS declenché avec Keys.Enter

    Je cherche, je cherche et je ne trouve pas !!

  6. #6
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Salut

    Bon pour l'info et la petite histoire j'ai trouvé

    1- Comme mon datagridview comportait des combo, l'utilisateur trouvait confortable qu'un cliquant sur le combo, il s'ouvre directement sans devoir faire un deuxieme click
    Pour cela j'avais mis la proprieté EditMode a EditOnEnter

    2- Ce Datagridview d'UNE SEULE ligne permet d'introduire des clef de recherche dans une base. Et l'utilisateur trouve AUSSI confortable que le ENTER permette de lancer la recherche avec les clef introduite

    Malheureusement il s'avere que ces deux conforts sont antagoniste et que si la propriete EditMode est à EditOnEnter, il n'est plus possible d'intercepter un Key event venant de la touche Enter

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Quote] DVP quoté sur Bashfr
    Par Skyounet dans le forum La taverne du Club : Humour et divers
    Réponses: 16
    Dernier message: 26/09/2006, 18h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo