ASP.NET母版页公共变量错误

时间:2010-06-09 09:47:23

标签: asp.net

我在MasterPage上有公共变量'MessagePlaceholder'和一个访问此属性的类,就像从getMessage()设置它的值为字符串;

((HttpContext.Current.Handler as System.Web.UI.Page).Master as MasterPage).MessagePlaceholder = getMessage();

这给我一个像这样的错误

错误3'System.Web.UI.MasterPage'不包含'MessagePlaceholder'的定义,也没有扩展方法'MessagePlaceholder'接受类型'System.Web.UI.MasterPage'的第一个参数'(是你错过了使用指令或程序集引用?)

我该怎么办?

1 个答案:

答案 0 :(得分:1)

您已在主页中添加了变量MessagePlaceHolder。这意味着您已扩展了标准母版页的功能。

您必须将Master属性转换为Masterpage的类型。

((MyMasterClass)((Page)HttpContext.Current.Handler).Master).MessagePlaceHolder = getMessage();

或在VB.Net

DirectCast(DirectCast(HttpContext.Current.Handler, Page).Master, MyMasterClass).MessagePlaceHolder = getMessage()