在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1、主页面的pageload事件执行后才执行用户控件的pageload事件 2、在用户控件类中添加public属性,可以开放相关的用户控件上的控件或控件的属性给主页面调用 //公开某控件的Text属性 public string Message { get { return msglbl.Text; } set { msglbl.Text = value; } } //公开某控件全部属性 public Label Msglbl { get { return msglbl; } }
3、用户控件做可以做局部缓存使用,可以在用户控件页面上加上 <%@ OutputCache Duration="10" VaryByParam="keyword" VaryByControl="msglbl" Shared="true" %> 其中Duration为缓存时间,VaryByParam为是查询参数(是否通过不同的查询参数做缓存,多个用分号分开),VaryByControl为根据控件值的做缓存(多个控件用分号分开),share为true则说明当有多个不同页面引用这个用户控件时,也采用缓存的用户控件,而不是新创建用户控件对象 4、主页面影响用户控件上的操作事件 :比如用户控件上有个按钮控件,点击控件会响应主页面上的事件 1)在用户控件类中添加一个事件委托 public event EventHandler Myevent; 2)在用户控件的按钮事件中调用该委托 protected void btn_OnClick(object sender, EventArgs e) { if (Myevent != null) Myevent(this, e); else throw new Exception("fdsa"); }
3)在主页面中定义事件响应的方法 protected void My_Click(object sender, EventArgs e) { albl.Text = "test"; }
4)在主页面中page_load事件中添加注册事件 protected void Page_Load(object sender, EventArgs e) { myAscx.Myevent += My_Click; } 这样当点击用户控件上的按钮时,将执行主页面上的事件。 |
请发表评论