protected void Page_Load(object sender, EventArgs e)
{
txt_ItemName.Text = Request.QueryString["id"].ToString().Trim();
}
protected void Page_PreRender(object sender, EventArgs e)
{
Binddata();
}
//数据初始化
protected void Binddata()
{
int itemID = int.Parse(Request.QueryString["id"].ToString().Trim());
if (itemID != null && itemID != -1)
{
string loginuser = Session["AdminName"].ToString().Trim();
lbl_checkMan.Text = loginuser;
//rpt_itemCheck.DataSource = poweradd.GetList(itemID);
//rpt_itemCheck.DataBind();
ListView1.DataSource = poweradd.GetList(itemID);
ListView1.DataBind();
}
else
{
Response.Write("<script>alert('数据库信息有误,请联系管理员。')</script>");
}
}
如代码所示,把dataset数据绑定到Page_PreRender()事件里面就解决问题了。
具体剖析:ASP.NET 2.0 的页面生命周期就是Web页面发生了从开始到结束的一系列的事件。而这些事件中只有两个事件需要处理:Page_Load事件和PreRender事件,控件事件发生在两者之间。