• MasterPage和内容页之间数据传递


    MasterPage是asp.net 2.0中的一个新东东。具有如下的优点:

    1.使用母版页可以集中处理页的通用功能,以便可以只在一个位置上进行更新。
    2.使用母版页可以方便地创建一组控件和代码,并将结果应用于一组页。例如,可以在母版页上使用控件来创建一个应用于所有页的菜单。
    3.通过允许控制占位符控件的呈现方式,母版页使您可以在细节上控制最终页的布局。
    4.母版页提供一个对象模型,使用该对象模型可以从各个内容页自定义母版页。

    在实际的使用中内容页要和MasterPage之间进行数据交换。下面介绍一种数据传递的方式。
    1、在内容页中增加如下的语句
    <%@ MasterType VirtualPath="~/MasterPage.master" %>
    VirtualPath的值是MaterMage的路径

    2、在MaterPage中定义Public的方法
        public void SetValue(string s)
        {
            this.Label1.Text = s;
        }

        public string GetValue()
        {
            return this.Label1.Text;
        }

    SetValue方法用于从内容页向MasterPage传递数据。
    GetValue方法用于从MasterPage向内容页传递数据。

    3、在内容页中调用MasterPage中的方法
    如果没有第1步(创建对母版页的强类型引用),在内容页中看不见MasterPage中的方法

        protected void Button2_Click(object sender, EventArgs e)
        
    {
            
    //向MasterPage传递值
            Master.SetValue("OK");
            
    //从MasterPage获取值        
            string str = Master.GetValue();
        }

    4、从MasterPage向内容页传递数据的另外方式
    上面的从MasterPage向内容页传递数据是一种拉的方式,比较被动。我们还可以在MasterPage中定义事件,通过事件将数据传递到内容页也可以。

    5、FindControl
    我们可以在内容页中调用Master.FindControl(MasterPage中控件ID)来获取MasterPage中的控件。
    还可以调用Master.FindControl(MasterPage中的ContentPlaceHolder的控件ID).FindControl(内容页中控件ID)来找到内容页中的控件。

  • 相关阅读:
    Linux下安装JDK
    Flink源码阅读(五)——Flink中任务相关的核心类简析
    使用CloudFlare Worker 来免费部署 JSProxy 服务
    Nginx:进程调度
    Javassist基本用法汇总
    IO
    IO
    springcloud3(五) spring cloud gateway动态路由的四类实现方式
    架构设计(二) 互联网网关平台对比
    Python 的协程
  • 原文地址:https://www.cnblogs.com/hobe/p/1054322.html
Copyright © 2020-2023  润新知