转自:http://www.cxyclub.cn/post/page-ViewState-UserContorl-GetValue.html
用户控件 类名:WebUserControl 属性:private DataTable dt //这里用public protected private都行,关键是ViewState是Protected的,因此需要定义下面的方法来读取或者访问 方法:
private DataTable _mydt = null; public DataTable mydt { get {
return (DataTable)ViewState["thedt"]; //注:不能 return _mydt,因为其不能保存改变了的值,即控件中重新给_mydt赋值,在page中取到的还是null
} set {
_mydt = value;
} } 事件: protected void Button1_Click(object sender, EventArgs e) { DataSet ds=new DataSet(); …… dt = ds.Tables[0]; ViewState["thedt"] = dt; //这里存入到ViewState中,方法跟Session颇为相似 }
page 用户控件id:WebUserControl1 读取控件中的属性: DataTable dt = new DataTable(); protected void Button1_Click(object sender, EventArgs e) { dt = WebUserControl1.mydt; //读取出来了 }
|
请发表评论