刚开始接触.net编程,问题太简单了请不要笑话 我用的编程工具是vs2005,基于web开发,当我拖一个GridView控件时后,绑定好相应的数据源,然后运行,然而所有的列都不能编辑,我不知道为什么?到底应该如何设置才可以让GRIDVIEW可编辑,谢谢各位了!
问题补充:加分了! 呵呵,其实是我把C#.net和其他语言混淆了,这个GRIDVIEW根本就不能这么实现,没有正确答案,只好把几个挂边的人提出来了,谢谢大家热心帮助!!! 由于我没有说清楚的原因,导致大家没有回答的不准确,抱歉。 举个例子:在GridView中,我把第一列绑定数据库中一个bit型列,设置GridView此列为:CheckBoxFiled,让其为复选框,(和数据库绑定没有问题),可是我不明白为什么这个复选框不能选择,颜色为暗灰色,成不可编辑状态。Enabled我也设置成了ture ,我不明白为什么不能编辑这一列,改如何才能让这列可以编辑呢,谢谢!! --激活编辑状态在GridView1_RowEditing事件下写下面的代码:GridView1.EditIndex = e.NewEditIndex; --编辑数据在GridView1_RowUpdating事件下写下面的代码:sqlcon = new SqlConnection(strCon); string sqlstr = "update 表 set 字段1='" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim() + "',字段2='" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim() + "',字段3='" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim() + "' where id='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'"; sqlcom=new SqlCommand(sqlstr,sqlcon); sqlcon.Open(); sqlcom.ExecuteNonQuery(); sqlcon.Close(); GridView1.EditIndex = -1; bind(); --取消编辑的话在GridView1_RowCancelingEdit事件下写下面的代码: GridView1.EditIndex = -1; bind(); //绑定 public void bind() { string sqlstr = "select * from 表"; sqlcon = new SqlConnection(strCon); SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon); DataSet myds = new DataSet(); sqlcon.Open(); myda.Fill(myds, "表"); GridView1.DataSource = myds; GridView1.DataKeyNames = new string[] { "id" };//主键 GridView1.DataBind(); sqlcon.Close(); }