C#ASPX:如何在Control中获取父页面的继承属性?

时间:2011-10-16 17:04:15

标签: asp.net user-controls properties inherited

我有一个aspx页面,它继承了一个具有受保护属性的母版页。像这样:

母版 { 受保护的字符串propX .. }

MyPage:母版页

--- myControl:用户控件

在myControl代码隐藏中,我想访问propX

有什么想法吗?

谢谢!

3 个答案:

答案 0 :(得分:1)

您可以更改字符串的访问修饰符。也许把它设置为内部。

答案 1 :(得分:1)

也许尝试将Page类的myControl属性强制转换为MyPage类?

  

string value =((MyPage)this.Page)。propX

如果您想从其他类(例如myControl)访问此属性,则属性propX的访问修饰符应设置为internalpublic

我假设您已在myControl页面上放置了MyPage个对象。

答案 2 :(得分:0)

您确定要从母版页继承吗?添加MasterPage指令并不意味着它继承它。通常,aspx页面应直接或间接从System.Web.UI.Page继承。

母版页不是“继承的”,这意味着无法从页面类(或控件类)访问受保护的成员。您最好的选择是将该物业公之于众或内部。