我有一个 aspx 页面,它继承了一个具有受保护属性的母版页。像这样:
masterpage { 受保护的字符串 propX.. }
我的页面:母版页
---我的控制:用户控制
在 myControl 代码隐藏中,我想访问 propX
有任何想法吗?
谢谢!
我有一个 aspx 页面,它继承了一个具有受保护属性的母版页。像这样:
masterpage { 受保护的字符串 propX.. }
我的页面:母版页
---我的控制:用户控制
在 myControl 代码隐藏中,我想访问 propX
有任何想法吗?
谢谢!
您可能会更改字符串的访问修饰符。也许将其设置为内部。
也许尝试将类的Page
属性myControl
转换为MyPage
类?
字符串值 = ((MyPage)this.Page).propX
如果你想从其他类(如myControl
)访问这个属性,属性的访问修饰符propX
应该设置为internal
或public
我假设您已将myControl
对象放在MyPage
页面上。
你确定你是从母版页继承的吗?添加 MasterPage 指令并不意味着它继承自它。通常一个 aspx 页面应该直接或间接地从 System.Web.UI.Page 继承。
母版页不是“继承的”,这意味着无法从页面类(或控件类)访问受保护的成员。您最好的选择是将财产公开或内部公开。