今天做了个试验,发现,下面的代码中:public partial class _Default : System.Web.UI.Page
{
int[] a = new int[] { 1, 2, 3, 4 };
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
int f = 9;
GridView1.DataSource = a;
DataBind();
}
}protected void Button1_Click(object sender, EventArgs e)
{
DataBind();
}}然后一点button1gridview的数据就没了。。我的理解是:在回发后,根据页面生命周期,button1单击后回发到服务器,先加载视图状态使gridview的datasource值为a,然后再执行click事件处理程序中的databind,这样的话数据应该还在啊,为什么会一点击就消失了呢?请指教!谢谢。。!
{
int[] a = new int[] { 1, 2, 3, 4 };
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
int f = 9;
GridView1.DataSource = a;
DataBind();
}
}protected void Button1_Click(object sender, EventArgs e)
{
DataBind();
}}然后一点button1gridview的数据就没了。。我的理解是:在回发后,根据页面生命周期,button1单击后回发到服务器,先加载视图状态使gridview的datasource值为a,然后再执行click事件处理程序中的databind,这样的话数据应该还在啊,为什么会一点击就消失了呢?请指教!谢谢。。!
解决方案 »
- 帮看下哪里错了
- 谁能帮我看一下getRow这个类有什么问题吗。
- 统计动态的DataSet数据表中数据的方法,急用。
- 请教---测试连接通不过?asp.net和sql server2005
- 问两个简单问题。。。。。。。。。。。。。。。
- 求正则替换sql语句为select count(*) from
- #求助:#ado.net调用有关存储过程出错,
- 谁能提供使用DATAGRID的例子程序?
- 发布网页上的MDI窗口,因似于vs.net的那种。
- 1. 使用OleDbConnection.item("字段名称") 来访问字段的值,如果字段值为null时,则会出错,有什么办法可以判断该字段的值是否为null:如
- 问一个理论性的问题,请高手指点
- 关于gridview的视图状态
你不知道click事件到底做什么啦。
页面又刷新拉。
webForm和winForm运行机制完全不一样!!!
click就是放了个databind()进去而已哦。。
{
GridView1.DataSource = a;
DataBind();
}
postback之后要重新绑定数据
是DataBind();的问题。
按按钮时DataBind()没有数据源就没了。
如果楼主把DataBind()这句注释掉。那数据还是有的。
不知楼主知不知道!IsPostBack的意思
知道。
我知道是databind的问题,但是视图状态不是保存了datasource的属性值吗,databind的作用是把datasource的属性值加载到gridview控件里显示出来吧?为什么显示的数据会没有呢?
只是推测。