none
Comment appeler la méthode DefautValuesNeeded d'un dataGridView

    Question

  • J'ai un datagridview (titresDataGridView) sur lequel je veux ajouter des éléments (Windows form).

    Pour ce faire, je dois entrer des valeurs par défaut.

    J'ai donc crée une méthode DefautValuesNeeded :

    privatevoidtitresDataGridView_DefaultValuesNeeded(objectsender, DataGridViewRowEventArgse)

            {

                titresBindingSource.MoveLast();        

                intnewNumTitres = int.Parse(lastNumTitresLabel2.Text);

                newNumTitres = newNumTitres + 1;          

                MessageBox.Show(newNumTitres.ToString()

                e.Row.Cells[numTitres"].Value = newNumTitres.ToString()

                e.Row.Cells["genre"].Value = genreComboBox.Text;

                e.Row.Cells["format"].Value = formatComboBox.Text;

               }

    Visiblement, au débogage, la méthode n'est pas appelée quand je rentre dans une nouvelle ligne car le message ne s'affiche pas.

    Je suppose qu'elle n'est pas référencée (cela m'est déjà arrivé en collant des méthodes issues d'un autre projet : il a fallu que je recrée l'évènement "clic"  d'un button et coller le code dedans pour que cela fonctionne).

    J'ai cherché sur le web mais n'ai pas trouvé comment appeler des méthodes quand on ne peut pas agir physiquement sur la form comme pour cliquer sur un button. 

           

    mardi 28 mars 2017 14:30

Réponses

  • Bonjour,
    Vous pouvez inscrire l'événement "DefaultValuesNeeded" en choisissant la DataGridView (double clique sur Form1.cs dans mon cas) et puis double clique sur cette événement dans la fenêtre "Propriété":


    Cette ligne est ajoutée automatiquement par ce dernier double clique. Voyez la capture d'écran:

    Cordialement,
    Nina


    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    • Marqué comme réponse Serjean38 vendredi 31 mars 2017 21:09
    vendredi 31 mars 2017 14:27
    Modérateur

Toutes les réponses

  • Bonjour,
    Vérifiez que vous avez la ligne suivante dans Designer.cs: 

    this.dataGridView1.DefaultValuesNeeded += new System.Windows.Forms.DataGridViewRowEventHandler(this.dataGridView1_DefaultValuesNeeded);

    Cordialement,
    Nina


    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    mercredi 29 mars 2017 12:45
    Modérateur
  • Bonsoir Nina,

    Effectivement, cette ligne n'y figure pas et ma question est peut on l'inscrire automatiquement comme en double cliquant sur un button sur la Form pour créer l'évènement button_Click ?

    S'il faut inscrire cette ligne manuellement dans le Designer, dois je la mettre à la fin des déclarations relatives au dataGridView et avant celles relatives au colonnes ?

    Ce qui est bizarre, c'est que cet évènement figure dans le menu déroulant du Designer, en grisé comme l'évènement button_Click et que si on clique dessus, on se retrouve dans le Form.cs sur la ligne d'ouverture.

    Dans Visual Studio 2005, on avait accès à tous les objets de la Form et leurs évènements par le menu déroulant du haut (par contre dans cette version, il n'y avait pour aucun évènement la ligne dont vous me parlez dans le Designer).

    Peut on paramétrer VS 2015 pour avoir le même effet ?

    mercredi 29 mars 2017 18:52
  • Bonjour,
    Vous pouvez inscrire l'événement "DefaultValuesNeeded" en choisissant la DataGridView (double clique sur Form1.cs dans mon cas) et puis double clique sur cette événement dans la fenêtre "Propriété":


    Cette ligne est ajoutée automatiquement par ce dernier double clique. Voyez la capture d'écran:

    Cordialement,
    Nina


    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    • Marqué comme réponse Serjean38 vendredi 31 mars 2017 21:09
    vendredi 31 mars 2017 14:27
    Modérateur
  • Merci beaucoup de cette info.

    C'est exactement ce que je cherchais ; en fait par rapport à VS 2005, la liste a été déplacée.

    Bien cordialement

    Jean Paul

    vendredi 31 mars 2017 21:11