posts - 43,  comments - 121,  trackbacks - 12
Master页是提供模版的一种简单方式,该模板可由应用程序中的任意多个Asp.Net页使用,在运行的时候,Asp.Net引擎会把Master页和Content页的相关元素合并到一个页,并显示给终端.
在Content页里如何操作Master页的控件呢?
先看看在处理Master页和Content页时可以使用的事件,及终端用户请求一个Content页时,相关事件的触发顺序:
Master页子控件的初始化: 先初始化Master页包含的所有服务器控件
Content页面子控件的初始化: 先初始化Content页包含的所有服务器控件
Content页的初始化: 初始化Content页
Content页的加载: 加载Content页,这跟在Page_LoadComplete事件后的Page_Load事件
Master页的加载: 加载Master页,这跟在Page_LoadComplete事件后的Page_Load事件
Master页子控件加载: 把Master页中的服务器控件加载到页中
Content页子控件的加载: 把Master页中的服务器控件加载到页中
看过上面的事件触发顺序,可以得知Master页的控件获取需要在Page_LoadComplete里
假使Master页里有一Lable,ID为Label1,要在Content页中访问,那么可以这样:
    protected void Page_LoadComplete ( object sender , EventArgs e )
    {
        
string masterLabel = ( Master.FindControl( "Lable1" ) as Label ).Text;
    }
另外我觉得比较好的方法是把Master页里的控件作为公共属性公开
 public Label masterLabel1
 {
     
get { return Label1; }
     
set { Label1 = value; }
 }
在Content页里操作该公共属性就OK了
 Master.masterLabel1.Text = "<a href='http://doll-net.cnblogs.com'>空空儿</a>";
posted on 2007-07-16 11:22 空空儿 阅读(589) 评论(1)  编辑 收藏 网摘 所属分类: ASP.NET

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
Google站内搜索

China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!
开发者征途系统新作:《设计模式——基于C#的工程化实现及扩展》



相关文章:

相关链接: