当GridView遭遇数据类型"是/否",获取gridview的一个单元格的值并更改
2008-11-05 09:56
281 查看
在GridView中的模板列,我不能访问到模板列内的列,正确说是不能访问到对应列的id.所以用下方法
在GridView1中 编辑模板,然后就在 ItemTemplate模式下拖入控件 CheckBox,可以见到源码中:
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" Text="xxx" />
</ItemTemplate>
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
CheckBox check_value = (CheckBox)GridView1.Rows[e.RowIndex].FindControl("CheckBox1");//定义
string sqlstr = "update teacher set passed=" + check_value.Checked.ToString() + " where t_name='" + (((TextBox)(GridView1.Rows[e.RowIndex].Cells[0].Controls[0])).Text.ToString().Trim()) + "'";
OleDbConnection Conn = dbcenter.Acce_Conn();
Conn.Open();
OleDbCommand cmd = new OleDbCommand(sqlstr, Conn);//方法一
cmd.ExecuteNonQuery();
Conn.Close();
mydatabind(); //绑定数据
}
顺带讲下
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
this.GridView1.EditIndex = e.NewEditIndex;
mydatabind();
}
protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
GridView1.EditIndex = -1;
mydatabind();
}
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
OleDbConnection conn = dbcenter.Acce_Conn();
conn.Open();
OleDbCommand command = conn.CreateCommand();
command.CommandText = "delete from exam_test where testid=" + System.Convert.ToInt32(GridView1.Rows[e.RowIndex].Cells[x].Text) + ""; //方法二
command.ExecuteNonQuery();
conn.Close();
GridView1.DataBind();
}
0904近半年来不搞dotnet,很生疏哦。后来在一个系统中要更改一个已经选定的gridview单元格值,也费了点时间.
update段代码(ittest-tch-power)
CheckBox check_value = (CheckBox)GridView1.Rows[e.RowIndex].FindControl("CheckBox1");//定义check_value为CheckBox类型
int level = System.Convert.ToInt32(((TextBox)(GridView1.Rows[e.RowIndex].Cells[5].Controls[0])).Text); //这次更改的重点哦。就是这里 更改一个已经选定的gridview单元格值 转换为int类型
//string sqlstr = "update teacher set passed=" + check_value.Checked.ToString() + " where t_name='" + (((TextBox)(GridView1.Rows[e.RowIndex].Cells[0].Controls[0])).Text.ToString().Trim()) + "'";
string sqlstr = "update teach set passed=" + check_value.Checked.ToString() + ",t_level="+level+" where t_name=@t_name";
OleDbConnection Conn = center.Ace_Conn();
Conn.Open();
OleDbCommand cmd = new OleDbCommand(sqlstr, Conn);
cmd.Parameters.Add("@t_name",OleDbType.VarChar,40);
cmd.Parameters[0].Value = (((TextBox)(GridView1.Rows[e.RowIndex].Cells[0].Controls[0])).Text.ToString().Trim());
cmd.ExecuteNonQuery();
Conn.Close();
databind();
慢慢理解.好
在GridView1中 编辑模板,然后就在 ItemTemplate模式下拖入控件 CheckBox,可以见到源码中:
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" Text="xxx" />
</ItemTemplate>
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
CheckBox check_value = (CheckBox)GridView1.Rows[e.RowIndex].FindControl("CheckBox1");//定义
string sqlstr = "update teacher set passed=" + check_value.Checked.ToString() + " where t_name='" + (((TextBox)(GridView1.Rows[e.RowIndex].Cells[0].Controls[0])).Text.ToString().Trim()) + "'";
OleDbConnection Conn = dbcenter.Acce_Conn();
Conn.Open();
OleDbCommand cmd = new OleDbCommand(sqlstr, Conn);//方法一
cmd.ExecuteNonQuery();
Conn.Close();
mydatabind(); //绑定数据
}
顺带讲下
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
this.GridView1.EditIndex = e.NewEditIndex;
mydatabind();
}
protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
GridView1.EditIndex = -1;
mydatabind();
}
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
OleDbConnection conn = dbcenter.Acce_Conn();
conn.Open();
OleDbCommand command = conn.CreateCommand();
command.CommandText = "delete from exam_test where testid=" + System.Convert.ToInt32(GridView1.Rows[e.RowIndex].Cells[x].Text) + ""; //方法二
command.ExecuteNonQuery();
conn.Close();
GridView1.DataBind();
}
0904近半年来不搞dotnet,很生疏哦。后来在一个系统中要更改一个已经选定的gridview单元格值,也费了点时间.
update段代码(ittest-tch-power)
CheckBox check_value = (CheckBox)GridView1.Rows[e.RowIndex].FindControl("CheckBox1");//定义check_value为CheckBox类型
int level = System.Convert.ToInt32(((TextBox)(GridView1.Rows[e.RowIndex].Cells[5].Controls[0])).Text); //这次更改的重点哦。就是这里 更改一个已经选定的gridview单元格值 转换为int类型
//string sqlstr = "update teacher set passed=" + check_value.Checked.ToString() + " where t_name='" + (((TextBox)(GridView1.Rows[e.RowIndex].Cells[0].Controls[0])).Text.ToString().Trim()) + "'";
string sqlstr = "update teach set passed=" + check_value.Checked.ToString() + ",t_level="+level+" where t_name=@t_name";
OleDbConnection Conn = center.Ace_Conn();
Conn.Open();
OleDbCommand cmd = new OleDbCommand(sqlstr, Conn);
cmd.Parameters.Add("@t_name",OleDbType.VarChar,40);
cmd.Parameters[0].Value = (((TextBox)(GridView1.Rows[e.RowIndex].Cells[0].Controls[0])).Text.ToString().Trim());
cmd.ExecuteNonQuery();
Conn.Close();
databind();
慢慢理解.好
相关文章推荐
- 获取一个网页数据返回的编码类型是gzip,解压后,网页中包含的中文字段变成了乱码,只需要把编码更改为BIG5 ,繁体字就正常显示了!
- Transact-SQL 示例 - 如何获取一个变量的数据类型
- 怎么获取一个类型的所有字段的名字 和获取给予数据相应的值
- Transact-SQL 示例 - 如何获取一个变量的数据类型
- C# 获取ORACLE SYS.XMLTYPE "遇到不支持的 Oracle 数据类型 USERDEFINED"
- nvarchar2转化为clob的方法或者“要修改数据类型,则要更改的列必须为空"
- 获取一个变量的数据类型
- Handsontable获取某一行,某一个单元格数据
- GridView中 对数据编辑打开一个新页面 & 动态添加控件并获取其值
- 【一步一步学习VBA】Excel VBA 获取当前单元格的数据类型
- 单击gridview控件外部的一个按钮,获取gridview中的一列数据,获得的数据插入到另一个表中
- C++中获取一个原生数据类型能表示的最大值
- Apache.POI.HSSF获取单元格数据为String类型(参考源码)新
- Mysql中返回一个数据库的所有表名,列名数据类型备注
- PHP+openlayers实现的一个登陆校园卡网获取消费数据中地点生成个人运动轨迹的小DEMO
- 关于数据类型Char(看了论坛的帖子后自己写的)——原来一个中文字在java中也是一个char
- 获取json、xml的数据类型--dojo Quick Start/dojo入门手册3
- 从 datetime2 数据类型到 datetime 数据类型的转换产生一个超出范围的值。
- GridView的七种数据绑定列的类型
- 一个用于网络传输,转换数据类型到byte的例子