2010-11-03 56 views
1
父页面

子控件举例来说,如果我用户控件复选框称为IsGreatCoder和用户控件嵌入在主网页(父页面)。Asp.Net用户控件 - 访问在

我通常都通过一个公共财产,我不得不手工编写露出它获得进入主页的IsGreatCoder.Checked值(说“IsAGreatCoder”)。

如果用户控件包含在主要页面为“的UserControl1”,那么我会访问它“userControl1.IsAGreatCoder”。

但是,我想知道是否有无论如何宣布UserControl,使所有的UI控件添加到它被宣布为公开的,这种方式允许我访问主页中的实际控件(父母)。

基本上我希望能够像做 userControl1.IsGreatCoder.Checked 而不必实现的属性。

我想这样做的原因是我想访问更多的复选框的属性,并且将每个属性实现为公共属性是一件痛苦的事情。

回答

2

按照设计,这是不可能的(将对象的私有标识设置为自动公开)。为了使它更容易一点,你可以进入你的设计器视图(如果使用Web应用程序项目)并编辑每个控制声明在那里是公开的,但是当你改变UI时它将被覆盖(它是自动的,生成的毕竟),所以它可能是更好的只是:

public bool IsAGreatCoder 
{ 
    get { return IsGreatCoder.Checked; } 
} 

请注意,你需要从你的控件名称区分你的财产命名。