OnPreRender事件常见用法
2015-06-07 20:58
429 查看
protected override void OnPreRender(EventArgs e)
1) 加入脚本
2) 设定标题
3) 设定按钮客户端事件
4) 设定控件的状态
5) 加入脚本块
1) 加入脚本
protected override void OnPreRender(EventArgs e) { base.OnPreRender(e); this.Page.RegisterClientScriptBlock("InsertText", this.RenderScript()); this.Page.RegisterOnSubmitStatement("StorePostBody", "StorePostBody();"); }
2) 设定标题
protected override void OnPreRender(EventArgs e) { if(_mainTitle != null) _mainTitle.Text = ResourceManager.GetString(Title); if(_subTitle != null) _subTitle.Text = ResourceManager.GetString(SubTitle); base.OnPreRender (e); }
3) 设定按钮客户端事件
protected override void OnPreRender(EventArgs e) { Submit.Attributes.Add("onclick", "return SubmitSendToFriend('" + From.ClientID + "', '" + To.ClientID + "');"); }
4) 设定控件的状态
protected override void OnPreRender(System.EventArgs e) { if(replyButton.Visible == false) ((Literal)FindControl("Sep1")).Visible = false; if(threadSubButton.Visible == false) ((Literal)FindControl("Sep3")).Visible = false; if(rateButton.Visible == false) ((Literal)FindControl("Sep2")).Visible = false; base.OnPreRender (e); }
5) 加入脚本块
protected override void OnPreRender(EventArgs e) { base.OnPreRender (e); StringBuilder sb = new StringBuilder(); sb.Append(" "); sb.Append(" function ToggleRateMenu() {"); sb.Append(" rateMenu = document.getElementById('RateMenu');"); sb.Append(" rateButton = document.getElementById('RateButton');"); sb.Append(""); sb.Append(" rateMenu.style.left = getposOffset(rateButton, /"left/");"); sb.Append(" rateMenu.style.top = getposOffset(rateButton, /"top/") + rateButton.offsetHeight;"); sb.Append(""); sb.Append(" if (rateMenu.style.visibility == /"hidden/") {"); sb.Append(" rateMenu.style.visibility = /"visible/";"); sb.Append(" rateMenu.style.display = 'block';"); sb.Append(" } else {"); sb.Append(" rateMenu.style.visibility = /"hidden/";"); sb.Append(" rateMenu.style.display = 'none';"); sb.Append(" }"); sb.Append(" }"); sb.Append(" "); sb.Append(" function getposOffset(what, offsettype){"); sb.Append(" var totaloffset=(offsettype==/"left/")? what.offsetLeft : what.offsetTop;"); sb.Append(" var parentEl=what.offsetParent;"); sb.Append(" while (parentEl!=null){"); sb.Append(" totaloffset=(offsettype==/"left/")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;"); sb.Append(" parentEl=parentEl.offsetParent;"); sb.Append(" }"); sb.Append(" return totaloffset;"); sb.Append("}"); sb.Append(" "); Page.RegisterClientScriptBlock("RatePost",sb.ToString()); }
相关文章推荐
- BestCoder Round #43 第二题 pog loves szh II
- 第一篇嘛
- Memcached 内存管理(一)
- UVA 12295 Optimal Symmetric Paths(spfa+记忆化)
- 面试题6:重建二叉树
- 给出设计类图
- 编辑器-----》博客园的编辑器tinymce
- A year with Go
- 离散型随机变量及其分布列
- 设计视图
- CSS3那些不为人知的高级属性
- 云计算产品设计脑洞
- 2014年最受欢迎WEB前端UI框架
- [PHP学习教程 - 系统]001.引用文件(require & include)
- 《梦断代码之读书笔记之二》
- 软件发布版本区别介绍-Alpha,Beta,RC,Release
- iOS drewRect方法
- Markdown学习(五)
- C#基础-----数据类型
- 软件发布版本区别介绍-Alpha,Beta,RC,Release