Comment insérer une valeur dans DataGridView Cell?

j'ai DataGridView (qui tiennent tout DataBase)

je veux insérer n'importe quelle valeur dans n'importe quelle cellule (et que cette valeur sauvera sur la base de données)

Comment le faire (en C#)

Merci d'avance

12
demandé sur combo_ci 2010-03-07 23:44:03

5 réponses

vous pouvez accéder à n'importe quelle cellule du DGV comme suit:

dataGridView1.Rows[rowIndex].Cells[columnIndex].Value = value;

mais habituellement il est préférable d'utiliser la reliure de données : vous liez le DGV à une source de données (DataTable, collection...) par le biais de l' DataSource propriété, et seulement travailler sur la source de données elle-même. DataGridView reflètera automatiquement les modifications, et les modifications faites sur le DataGridView sera répercuté sur la source de données

20
répondu Thomas Levesque 2010-03-07 20:48:56

C'est parfait code mais il ne peut pas ajouter une nouvelle ligne:

dataGridView1.Rows[rowIndex].Cells[columnIndex].Value = value;

Mais ce code peut insérer une nouvelle ligne:

this.dataGridView1.Rows.Add();
this.dataGridView1.Rows[0].Cells[1].Value = "1";
this.dataGridView1.Rows[0].Cells[2].Value = "Baqar";
12
répondu Baqar Hassan 2012-03-04 18:31:08

pour une raison quelconque, je n'ai pas pu ajouter de nombres (en format chaîne) à la vue de données Mais ça a marché pour moi J'espère que ça aidera quelqu'un!

//dataGridView1.Rows[RowCount].Cells[0].Value = FEString3;//This was not adding Stringed Numbers like "1","2","3"....
DataGridViewCell NewCell = new DataGridViewTextBoxCell();//Create New Cell
NewCell.Value = FEString3;//Set Cell Value
DataGridViewRow NewRow = new DataGridViewRow();//Create New Row
NewRow.Cells.Add(NewCell);//Add Cell to Row
dataGridView1.Rows.Add(NewRow);//Add Row To Datagrid
3
répondu DarkPh03n1X 2014-10-31 07:33:03

Vous pouvez utiliser cette fonction si vous souhaitez ajouter les données dans la base de données, avec un bouton. J'espère que ça aidera.

// dgvBill is name of DataGridView

string StrQuery;
try
{
    using (SqlConnection conn = new SqlConnection(ConnectingString))
    {
        using (SqlCommand comm = new SqlCommand())
        {
            comm.Connection = conn;
            conn.Open();
            for (int i = 0; i < dgvBill.Rows.Count; i++) 
            {
                StrQuery = @"INSERT INTO tblBillDetails (IdBill, productID, quantity, price,  total) VALUES ('" + IdBillVar+ "','" + dgvBill.Rows[i].Cells[0].Value + "', '" + dgvBill.Rows[i].Cells[4].Value + "', '" + dgvBill.Rows[i].Cells[3].Value + "', '" + dgvBill.Rows[i].Cells[2].Value + "');";
                comm.CommandText = StrQuery;
                comm.ExecuteNonQuery();         
             }
         }
     }
 }
 catch (Exception err)
 {
     MessageBox.Show(err.Message  , "Error !");
 }
0
répondu Scott 2013-02-02 11:26:44
int index= datagridview.rows.add();
datagridview.rows[index].cells[1].value=1;
datagridview.rows[index].cells[2].value="a";
datagridview.rows[index].cells[3].value="b";

espérons que cette aide! :)

0
répondu chan sopheap 2018-02-20 15:15:56