内部可见我无法弄清楚为什么Control.CreateChildControls在网页的代码隐藏类中可见。也就是说,Control.CreateChildControls定义为protected internal
,这意味着该方法仅对位于与Control类相同的程序集内的派生类可见。那么怎么可能,因为据我所知,网页类没有被编译成与Control类(System.Web.dll)相同的程序集?由于Control.CreateChildControls被标记为受保护的内部,它不应该在
thanx
内部可见我无法弄清楚为什么Control.CreateChildControls在网页的代码隐藏类中可见。也就是说,Control.CreateChildControls定义为protected internal
,这意味着该方法仅对位于与Control类相同的程序集内的派生类可见。那么怎么可能,因为据我所知,网页类没有被编译成与Control类(System.Web.dll)相同的程序集?由于Control.CreateChildControls被标记为受保护的内部,它不应该在
thanx
不幸的是,'受保护的内部'的措词是误导性的。这意味着'受保护'或'内部'而不是'受保护'和'内部'。
在你的%program files%\ microsoft visual studio 9.0 \ vc#\ Specifications \ 1033中,你有C#参考手册,这是在1.6.2节。
因此派生类可以使用它。
Page
类继承自Control
,它们都在System.Web.UI命名空间中,并且都在System.Web程序集中。
我觉得这是非常无益的表征之间的差异“保护和内部”与“受保护或内部”。哪些是“受保护的内部”?
你可能会说“受保护的内部是保护和内部的限制最少的组合,因此它的意思是‘保护和内部’”。
你也说“因此,它意味着‘保护或内部的’受保护的内部限制访问派生成员或装配成员”。
Yuck。
更好的方式来想想是:
有关此看到更多的想法:
感谢你们的帮助 – AspOnMyNet 2010-03-03 23:26:44