在CSDN的博文中看到了 muziduoxi 的文章:http://blog.csdn.net/muziduoxi/article/details/5386543 虽然里面提到的方法没有解决我的难题,但是我也是根据里面的方法想到现在所用的方法的,所以还是需要感谢  因为我要的变量初始化的时候是空的,如果使用muziduoxi的方法就只能读取到初始化时候的值,我做了个跟踪,发现有模板页的页面运行的时候是先运行本页的变量的定义→  到模板页的变量定义→ 到本页的Page_Load方法→ 到模板页的PageLoad方法,所以如果我要获取的模板页变量是在其Page_Load中初始化的话,那么在本页Page_Load中是读取不到的,如果要获取到的话方法就是:在本页的aspx中的页面上使用:<%=(this.Master asagency_web_agency_master).systemURL %>,至于为什么是 agency_web_agency_master这个我理解的就是它把点号.换成了下划线_,其实这个名称会在你输入完  as 然后空格的时候提示你的。
具体的代码如下:
模板页有个公共变量的定义:public string systemURL = "";
然后在内容页的aspx代码中直接使用:<%=(this.Master as agency_web_agency_master).systemURL %> 就可以正常输出了。
而且不单单可以获得字段,也可以获得对象,如果模板页有一个类:public Model.gy_agencyInfo modagency = new Model.gy_agencyInfo(); 类有个字段是:systemURL
在内容页的aspx代码中直接使用:<%=(this.Master as agency_web_agency_master).modagency.systemURL %> 就可以正常输出。
为了方便自己记住 muziduoxi  的方法,特意把它粘贴到了我这里,以方便自己查看:
获取母模版页的变量和属性值: 模板页:

  1. public partial class MasterPage : System.Web.UI.MasterPage
  2. {
  3. public int UserId {
  4. get { return 342; }
  5. }
  6. public string UserName = "shenjk";
  7. protected void Page_Load(object sender, EventArgs e)
  8. {
  9. }
  10. }
public partial class MasterPage : System.Web.UI.MasterPage
{ public int UserId {
get { return 342; }
} public string UserName = "shenjk";
protected void Page_Load(object sender, EventArgs e)
{ }
}

在内容页获取该值:

  1. protected void Page_Load(object sender, EventArgs e)
  2. {
  3. PropertyInfo pl = this.Master.GetType().GetProperty("UserId");
  4. object o = pl.GetValue(this.Master, null); //o=342
  5. FieldInfo f = this.Master.GetType().GetField("UserName");
  6. object o1 = f.GetValue(this.Master);  //o1=shenjk
  7. }
protected void Page_Load(object sender, EventArgs e)
{
PropertyInfo pl = this.Master.GetType().GetProperty("UserId");
object o = pl.GetValue(this.Master, null); //o=342 FieldInfo f = this.Master.GetType().GetField("UserName");
object o1 = f.GetValue(this.Master); //o1=shenjk }

引用模板页时,如何接收内容页(感觉应该为模板页)控件的值

TextBox myemail = (TextBox)this.Page.Master.FindControl("show").FindControl("email");  string email = myemail.Text;

这2行代码让我找了2天,我一直认为是:

TextBox myemail = (TextBox)this.Page.FindControl("email");  string email = myemail.Text;

总是一个错误:未将对象引用设置到对象的实例。

如何取得和当前页面联系的MasterPage中的变量

例如: 1. A.aspx用了一个叫MasterPage.master的母板页。 MasterPage.master.cs里定义了一个 int 型的变量 flag = 1 如何在A.aspx.cs里读出flag变量的值呢? 在 Page_Load 事件中添加如下代码: ((MasterPage)Pa

例如:     1.  A.aspx用了一个叫MasterPage.master的母板页。              MasterPage.master.cs里定义了一个   int   型的变量   flag   =   1              如何在A.aspx.cs里读出flag变量的值呢?

在 Page_Load 事件中添加如下代码:

((MasterPage)Page.Master).flag  = 2;  或 int c=((MasterPage)Page.Master).flag;

也可以 (this.Master as MasterPage).flag  = 2

2.下面的代码示例演示如何使用内容页访问前一个代码示例中的母版页上的公共属性   SiteName。

<%@   Page   Language="C#"   MasterPageFile="~/MasterPage.master"   Title="MasterPage   Example"   %>           <script   runat="server">          protected   void   Page_Load(object   sender,   EventArgs   e)          {              MasterExample   m   =   (MasterExample)Page.Master;              mylabel.Text   =   m.SiteName;          }      </script>           <asp:Content   ID="Content1"   ContentPlaceHolderID="ContentPlaceHolder1"   runat="Server">              Hello,   Master   Pages!              <asp:Label   runat="server"   Text="Label"   ID="mylabel"></asp:Label>      </asp:Content>

3.获取和设置母版页Master中的一个控件的值

((Controls_wucTopBar)Master.FindControl("wucTopBar1")).strNavigaName = “电影频道”;

4.可以这样zu

在内容页面里加上:    <%@ MasterType VirtualPath="~/MasterPage33.master" %>    在后台代码中     protected void Page_Load(object sender, EventArgs e)     {         Master.LabelText = "现在时间:" + System.DateTime.Now.ToShortTimeString();     }

C#中在内容页获取其模板页中的变量,或者值的更多相关文章

  1. ThinkPhp循环出数据库中的内容并输出到模板

    <foreach name='user' item='v'> //循环出数据库中的内容 对应控制器->方法中的  $this->assign('user',M('user')- ...

  2. Java中读取配置文件中的内容,并将其赋值给静态变量的方法

    应用场景 项目开发中某个功能需要抽取成方法写成一个工具类,提供给别人使用.写过工具类的人都知道,工具类中的方法一般都是静态方法,可以直接使用类名点方法名调用, 使用很方便,比如判断某个对象是否为空的方 ...

  3. ASP.NET中获取Repeater模板列中LinkButton按钮事件中获取ID等

    前台页面中: <asp:Repeater ID="repComment" runat="server">            <ItemTe ...

  4. jquery 获取 json文件内容后,将其内容显示到 下拉列表框中,再将下拉列表中的内容,显示到文本框中

    <script type="text/javascript"> $(function(){ $("#huoqv").click(function() ...

  5. js获取gridview模板列中textbox行列的值

    下面一个例子:在gridview中第一列输入数值,第二列输入数值,点击第三列的时候进行计算 求和,如果不符合标记为红色字体. 如图: 代码 : <html xmlns="http:// ...

  6. 网页布局中页面内容不足一屏时页脚footer固定底部

    方法一:给html.body都设置100%的高度,确定body下内容设置min-height有效,然后设置主体部分min-height为100%,此时若没有header.footer则刚好完美占满全屏 ...

  7. textarea中的内容的获取

    今天他们说为啥获取不到textarea的数值 这个问题让我很纳闷  为什么会获取不到呢? 按照逻辑来说 同样都是表单元素  怎么可能出现呢? 我就看了一眼代码 alert($("#texta ...

  8. Python2_实现文件中特定内容的获取

    ===================================================== 参考链接 Python 文本文件内容批量抽取:https://blog.csdn.net/q ...

  9. wpf 获取datagrid 模板列中的控件

    目前采用的 方法  (网上提供的一款) public static DataGridRow GetRow(DataGrid datagrid, int columnIndex)        {    ...

随机推荐

  1. xml初学简单介绍

    什么是XML? 1.全称Extensible Markup Language,可扩展标记语言,W3C组织公布. 2.XML用来保存有一定结构关系的数据. 3.标签的嵌套,实质是一串字符串. 4.跨平台 ...

  2. spring roo初体验

    1.下载spring-roo-2.0.0.M1,并执行如下命令,在/usr/local/bin下面建立一个roo的软连接   sudo ln -s /Users/pud/Documents/still ...

  3. pip安装错误,用镜像

    Retrying (Retry(total=4, connect=None, read=None, redirect=None)) after connection broken by 'Connec ...

  4. FreeSWITCH 学习笔记

    [1]FreeSWITCH学习笔记 1.Windows安装包下载地址:http://files.freeswitch.org/windows/installer/ 2.源码下载地址:http://fi ...

  5. C语言基础知识【循环】

    C 循环1.有的时候,我们可能需要多次执行同一块代码.一般情况下,语句是按顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推.编程语言提供了更为复杂执行路径的多种控制结构.循环语句允许我 ...

  6. VC++ 读写注冊表,注冊文件图标关联

    #include <string> #include <iostream> #include <Windows.h> #include <shlobj.h&g ...

  7. poj2816

    Popular Cows Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 29799   Accepted: 12090 De ...

  8. 【BZOJ3779】重组病毒 LCT+DFS序

    [BZOJ3779]重组病毒 Description 黑客们通过对已有的病毒反编译,将许多不同的病毒重组,并重新编译出了新型的重组病毒.这种病毒的繁殖和变异能力极强.为了阻止这种病毒传播,某安全机构策 ...

  9. css 坑记

    1. div 内容超出 (做换行处理)   要注意 white-space属性的运用 设置 div width:100%;(或者固定值) 设置换行  word-break: break-all; 设置 ...

  10. 什么是Mocking framework?它有什么用?(转)

    今天我想讲下关于mocking frameworks,并且解释下他为什么有用处.我将给你们展示用和不用mocking framework两种测试方法. 假设我们已经有了一个Driver类: publi ...