永发信息网

.net 子页面如何给母版MasterPage的public变量赋值?谢谢!

答案:5  悬赏:0  手机版
解决时间 2021-01-02 21:17
  • 提问者网友:佞臣
  • 2021-01-02 13:25
rt,
母版有一个 public int mll;
我想在子页面的onload里给mll赋值,请教如何赋值,谢谢!
最佳答案
  • 五星知识达人网友:轻雾山林
  • 2021-01-02 14:23
有两种方式可以完成赋值操作。
1.在内容页面中可以通过当前页面的Master属性访问到母版页的对象,但是返回类型是System.Web.UI.MasterPage而不是你自己创建的那个页面所以需要向下塑型然后就能访问自定义母版页中的属性了。
protected void Page_Load(object sender, EventArgs e)
{
((MasterPage)Master).mll= 100;
}
注意,这里的MasterPage是你自己创建的那个母版页的类名替换,如果是默认名称创建的第一个母版页那就不需要改变。
2.在内容页中声明对母版页的强类型引用,此时可以在后台代码中直接通过Master属性访问成员,而不需要再向下塑型。
假设内容页名为Default.aspx,那可以在页面中添加如下代码,声明对母版的强类型引用
<%@ MasterType VirtualPath="~/MasterPage.master" %>
然后可以在Default.aspx.cs的页面的 Page_Load方法中可以直接访问该成员
protected void Page_Load(object sender, EventArgs e)
{
Master.mll = 100;
}
不过建议在这种程序中,最好将母版页中的成员定义为private的,然后通过public的属性进行设置会比较好。
全部回答
  • 1楼网友:千夜
  • 2021-01-02 18:34
假设你的母板页叫MasterPage1 那么可以用((MasterPage1)this.Master).属性 来设置母板页变量
  • 2楼网友:走死在岁月里
  • 2021-01-02 17:43
使用权用CSS样式控制 再看看别人怎么说的。
  • 3楼网友:你哪知我潦倒为你
  • 2021-01-02 16:27
好久没用了,感觉母版机制 传值的时候很是麻烦,有许多奇怪的问题
  • 4楼网友:鸽屿
  • 2021-01-02 15:41
你不可能创建一个母版对象,所以使用static变量实现 public static int mll 在子页中就可以直接使用masterpage.mll了 希望对你有用。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯