如何在组合框中选择操作后通过datagridview插入数据

时间:2013-08-12 02:55:30

标签: c#

我的datagridview中有一个组合框列,其中我添加了三个项目插入,更新和删除现在我想选择一个项目并执行相应的操作。

但是当我这样做时,错误显示输入字符串格式不正确,可能是我无法选择相对于该组合​​框行的确切行。将会有人帮忙。

这是datagridview

的组合框SelectedIndexChanged事件的代码
ComboBox cmb = (ComboBox)sender;

if (cmb.SelectedItem.ToString() == "insert")
{
    con = new SqlConnection(@"Data Source=krishna-PC\SQLEXPRESS;Initial Catalog=dbnew;Integrated Security=True");

    int a = int.Parse(dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[1].ToString());
    string b = dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[2].Value.ToString();
    string c = dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[3].Value.ToString();
    com = new SqlCommand("insert into mytable values(@a,@b,@c,@d)", con);
    com.Parameters.AddWithValue("@a", a);
    com.Parameters.AddWithValue("@b", b);
    com.Parameters.AddWithValue("@c", c);
    com.Parameters.AddWithValue("@d", "govind");
    con.Open();
    com.ExecuteNonQuery();
        MessageBox.Show("Data has been inserted");
 }

2 个答案:

答案 0 :(得分:1)

只需修复单元格1的行,就忘记了.Value属性:

int a = int.Parse(dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[1].Value.ToString());

答案 1 :(得分:0)

而不是使用“价值”使用“文字”。喜欢..

int a = int.Parse(dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[1].Text.ToString());
string b = dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[2].Text.ToString();
string c = dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[3].Text.ToString();