none
Activer et et désactiver une cellule d'une gridview RRS feed

  • Question

  • Bonjour,

    J'ai une gridview éditable, je souhaiterais désactiver les autres cellules de la ligne (en édition) de la grid, quand j'édite une cellule.

    Merci d'avance

    jeudi 12 mars 2015 11:05

Réponses

  • En ASP, le gridview contient des rangées GridViewrow avec un membre Cells qui contient des éléments TableCell

    Chaque élément TableCell a une propriété Enabled qui active ou désactive l'élément.

    J'ai trouvé des renseignements à cette adresse:
    https://msdn.microsoft.com/fr-fr/library/system.web.ui.webcontrols.tablecell%28v=vs.100%29.aspx

    Cordialement



    vendredi 13 mars 2015 09:54

Toutes les réponses

  • Bonjour,

    Normalement dans le gridView on peut règler beaucoup de chose de la manière suivante:

    DataGridViewX.Columns[6].HeaderText = "Commandé";
    DataGridViewX.Columns[6].Visible = true;
    DataGridViewX.Columns[6].Width = 75;
    DataGridViewX.Columns[6].ReadOnly = true;
    DataGridViewX.Columns[6].FillWeight = 100;
    DataGridViewX.Columns[6].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
    DataGridViewX.Columns[6].DefaultCellStyle.Format = "0.0000";
    DataGridViewX.Columns[6].DefaultCellStyle.BackColor = Color.AliceBlue;
    DataGridViewX.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
    Cela s'applique à toutes les cellules de la colonne.

    L'autre solution consiste à créer une textbox par dessus le gridview, de désactiver le gridview et sur la frappe de la touche entrée dans la textbox, fermer la textbox et reporter aprés vérification le contenu dans le champ correspondant du gridView et réactiver le gridview.

    Cordialement

    jeudi 12 mars 2015 11:24
  • Rebonjour GD79

    Merci,

    je connais ces propriétés. j'utilise des itemtemplates avec des labels et textbox. j'ai une linkbutton qui me mets en mode édition avec update et cancel. En édition j'active certains textbox de la ligne du grid.

    Maintenant ce que je voudrais faire est ceci:

    Quand je commence à écrire (modifier le contenu d'une cellule de la grid) dans une cellule, je voudrais que les autres se désactivent.

    jeudi 12 mars 2015 12:18
  • Vous pouvez essayer ça.

            private void DTGRWVparams_CellContentClick(object sender, DataGridViewCellEventArgs e)
            {
                for (int kx = 0; kx < DTGVWcalques.ColumnCount; kx++)
                {
                    if (kx != e.ColumnIndex)
                    {
                        DataGridViewCell l_Cell = DTGVWcalques[e.RowIndex, kx];
                        l_Cell.ReadOnly = true;
                    }
                }
            }        
    Cordialement.

    jeudi 12 mars 2015 12:53
  • Donc, il faudrait que je remplace ma gridview par une datagridview?

    Petite précision, je travaille en asp.net.

    • Modifié dc74 jeudi 12 mars 2015 13:32 précision
    jeudi 12 mars 2015 13:27
  • Désolé, je n'ai pas fais attention.
    En ASP, il faut regarder si le même mécanisme existe.
    Cordialement

    jeudi 12 mars 2015 13:48
  • En ASP, le gridview contient des rangées GridViewrow avec un membre Cells qui contient des éléments TableCell

    Chaque élément TableCell a une propriété Enabled qui active ou désactive l'élément.

    J'ai trouvé des renseignements à cette adresse:
    https://msdn.microsoft.com/fr-fr/library/system.web.ui.webcontrols.tablecell%28v=vs.100%29.aspx

    Cordialement



    vendredi 13 mars 2015 09:54
  • Pas de soucis. Merci
    mercredi 18 mars 2015 10:04