在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. Java以指定格式输入数字

    package com.ylx; import java.text.DecimalFormat; public class Test { public static void main(String[ ...

  2. 【转】【Python + selenium】linux和mac环境,驱动器chromedriver和测试报告HTMLTestRunner放置的位置

    感谢: 作者:gz_tester,文章:<linux和mac环境,chromedriver和HTMLTestRunner放置的位置> 使用场景 配置python selenium 环境 使 ...

  3. 【JMeter4.0学习(九)】之定时器

    目录: 固定定时器 高斯随机定时器 附 一.固定定时器 1.添加线程组 2.添加固定定时器 3.添加HTTP请求 4.添加结果树以及运行  二.高斯随机定时器 1.添加线程组 2.添加高斯随机定时器 ...

  4. 3s 简介

    "3S"技术是英文遥感技术(Remote Sensing RS).地理信息系统(Geographical information System GIS).全球定位系统(Global ...

  5. 趣味编程:C#中Specification模式的实现(参考答案 - 下)

    一篇文章中我们利用C#语言的特性实现了一种轻量级的Specification模式,它的关键在于抛弃了具体的Specification类型,而是使用一个委托对象代替唯一关键的IsSatisfiedBy方 ...

  6. 详解Linux Top 命令

    Linux top命令简介 top 命令是最流行的性能监视工具之一,我们必需了解.它是一个优秀的交互式工具,用于监视性能.它提供系统整体性能,但报告进程信息才是 top 命令的长处.top 命令交互界 ...

  7. The following classes could not be found: - android.support.v7.internal.widget.ActionBarOverlayLayout

    升级android-studio之后,出现这个问题,一直解决不了. 无意间,在布局文件的Design界面中,修改原来的AppTheme为Base.Theme.AppCompat就修复了此问题. 暂时不 ...

  8. lua(仿类)

    Account = { balance = } function Account:deposit(v) self.balance = self.balance + v end function Acc ...

  9. MFC添加菜单资源与菜单执行函数的两种命令形式

    添加资源->新建一个菜单资源->选择相应的对话框 菜单的执行函数命令形式: COMMAD 是指点击菜单后的执行命令 UPDATE_COMMAND_UI 是指点击菜单后菜单状态的函数

  10. 记录-在jsp页面获取后台值在页面显示过长处理

    在下面的红色标记处 后台获取的值(字符串)在页面显示过长或者与其他重叠 (xxx).cutStr(15) 15代表的是展示字符串的长度 data.rows[i].avgPrice, ), data.r ...