日期:2014-05-18  浏览次数:20413 次

菜鸟提问:gridview的内容如何随着数据源内容的变化动态改变gridview中的显示内容?
众位大虾好:
我想实现的功能是:
当我用sql语言的update语句动态改变数据库某列的内容后,gridview对应该列的内容如何自动更新?
谢谢


------解决方案--------------------
首先你要了解WEB程序的运行机制,当客户端发出请求,服务器端回应。

那么反过来说,你想让服务器端通知客户端是不可能在WEB开发中是不可能的(当然这里排除第三方控件)。

如果你要实现这样,也只能用AJAX技术,其实也就是客户端不断向服务器端发出请求,如果有变化则返回。但是不推荐,如果流量很大的话,服务器端负载会很大的。
------解决方案--------------------
绑定gridview后,更新数据库内容gridview就会自动更新。条件是刷新页面。要想不刷新用Ajax~
------解决方案--------------------
首先你要设置GridView的DataKey属性,设置成你数据库的主键。
foreach (GridViewRow i in GridView1.Rows)
{
CheckBox ckb = (CheckBox)i.FindControl( "CheckBox1 ");
if (ckb.Checked)
{
string strDelId = GridView1.DataKeys[i.RowIndex].Value.ToString(); ;
SqlCommand cmd = new SqlCommand( "update......语句 ", Conn);
cmd.ExecuteNonQuery();
Response.Write( "修改成功 ");
}

}
------解决方案--------------------
在你button递交之后,重新来个绑定就可以了呀