Как вставить значение в ячейку DataGridView?

У меня есть DataGridView (который содержит любой DataBase)

Я хочу вставить любое значение в любую ячейку (и что это значение будет сохраняться в базе данных)

Как это сделать (на С#)

Спасибо заранее

Ответ 1

Вы можете получить доступ к любой ячейке DGV следующим образом:

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

Но обычно лучше использовать привязку данных: вы связываете DGV с источником данных (DataTable, collection...) через свойство DataSource и работаете только с самим источником данных. DataGridView будет автоматически отражать изменения, а изменения, сделанные на DataGridView, будут отражены в источнике данных

Ответ 2

Это идеальный код, но он не может добавить новую строку:

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

Но этот код может вставить новую строку:

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

Ответ 3

В некоторых случаях я не мог добавить Numbers (в строковом формате) в DataGridView Но это работало для меня. Надеюсь, это поможет кому-то!

//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

Ответ 4

Вы можете использовать эту функцию, если хотите добавить данные в базу данных с помощью кнопки. Надеюсь, это поможет.

// 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 !");
 }

Ответ 5

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";

надеюсь, что эта помощь!:)