DataGridView CheckBox功能不起作用

时间:2016-11-14 21:36:04

标签: c# datagridview sql-server-2008r2-express

我有一个具有CheckBox字段的DataGridView。我正在尝试更新数据库中的Checkbox值。但它给了我这个错误。我已经使用值ufGview_DataError实现方法e.Cancel = true。我有兴趣在它被检查时存储0,在未选中时存储1。有时它会更新值,但大多数时候没有做任何事情。我正在使用C#与Sql Server 2008 R2 Express Edition

以下是我用来更新数据库值的方法

 if (e.ColumnIndex == 3)
 {
    if (ufGview.Rows[e.RowIndex].Cells["Column2"].Value != null)
     {
        bool a = Convert.ToBoolean(ufGview.Rows[e.RowIndex].Cells["Column2"].Value);
        int i;
        if (a == true)
        {
           i = 0;
         }
         else
         {
           i = 1;
         }
         UpdatePermissions(ufGview.Rows[e.RowIndex].Cells["Column1"].Value.ToString(), i);
     }
 }

以下是UpdatePermissions

的方法
  private void UpdatePermissions(string p, int a)
    {
        CheckConnectionStatus();
        try
        {
            sqlConnection.Open();
            sqlCommand = new SqlCommand("Update FamilyMembers Set status=@status where Id=@Id", sqlConnection);
            sqlCommand.Parameters.AddWithValue("@status", a);
            sqlCommand.Parameters.AddWithValue("@Id", p);
            sqlDataReader = sqlCommand.ExecuteReader();

            sqlConnection.Close();
        }
        catch (Exception exp)
        {
            MessageBox.Show(exp.Message.ToString(), "Exception in UpdatePermissions");
        }
        finally
        {
            CheckConnectionStatus();
        }
    }

请帮我解决快照中显示的此问题。

enter image description here

0 个答案:

没有答案