2010-03-07 4 views

Répondre

16

Vous pouvez accéder à une cellule DGV comme suit:

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

Mais usu Il est préférable d'utiliser la liaison de données: vous liez la DGV à une source de données (DataTable, collection ...) via la propriété DataSource et ne travaillez que sur la source de données elle-même. Le DataGridView reflètera automatiquement les changements et les modifications apportées à la DataGridView sera répercuté sur la source

+0

Sur lequel même nous pouvons modifier et ajouter de la valeur et l'enregistrer dans la base de données – SurajSing

11

de données Ceci est un code parfait, mais il ne peut pas ajouter une nouvelle ligne:

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

Mais ce code peut insérer un nouvelle ligne:

this.dataGridView1.Rows.Add(); 
this.dataGridView1.Rows[0].Cells[1].Value = "1"; 
this.dataGridView1.Rows[0].Cells[2].Value = "Baqar"; 
+0

Je suis assez sûr que les index ne sont pas fixés dans le second exemple. – quantum

+0

Donc, ce n'est pas parfait parce qu'il ne peut pas ajouter une nouvelle ligne? :) –

0

Vous pouvez utiliser cette fonction si vous souhaitez ajouter les données dans la base de données à l'aide d'un bouton. J'espère que cela 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 !"); 
} 
3

Pour une raison que je ne pouvais pas ajouter des numéros (en format de chaîne) à la DataGridView Mais ce a marché pour moi, il espère aider 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 
0
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"; 

espoir cette aide! :)

Questions connexes