从usercontrol访问master的变量

时间:2013-04-18 14:20:56

标签: user-controls master-pages

我有一个带变量的masterPage。 我知道如何在带有masterType的childPage上使用该变量。 但我搜索如何在usercontrol中获取变量(控件在childPage上)?

也许childPage需要将masterPage的“指针”传递给usercontrol?

我尝试在我的usercontrol上使用MasterType但是

'Master' is not a member of 'System.Web.UI.UserControl

On designer.vb
    Public Shadows ReadOnly Property Master() As MasterTypeName
                Get
                    Return CType(MyBase.Master, MasterTypeName)
                End Get
    End Property

有没有办法让userControl知道MasterType?

1 个答案:

答案 0 :(得分:1)

为什么不按原样使用控件,而不是试图弄清楚如何从主页面获取值到控件?控件旨在能够独立于它们所驻留的页面(和母版页)。而是在用户控件中创建可由子页面设置的可公开访问的属性。例如,如果您在用户控件中有此内容:

''' <summary>
'''Some summary to show in the properties window
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
<Description("Your description here")> Public Property someValue As String = "something"

然后,您可以在其所在的客户端代码或后面的代码中访问该属性。例如:

 <cc3:myControl ID='myCOntrol1' runat="server" someProperty="HelloWorld"/>

或代码隐藏:

myControl1.someProperty ="HelloWorld"

您也可以以类似的方式公开事件。

请告诉我这是否有帮助,或者是否有理由这对您不起作用。