如果我有内联用户控制页面,那么控件上的公共属性...属性是什么?
<%@ Control language=C# %>
<script runat=server>
public string Title {get;set;}
</script>
即。如果有人通过标签或编程方式加载控件,他们会看到那些公共属性吗?
答案 0 :(得分:2)
是。
但是,如果您的用户控件被缓存(使用@OutputCache指令),则它们不会,因为ASP.NET会将您的控件视为PartialCachingControl
(甚至转换为UserControl
赢得'在这里工作)。如果要参数化用户控件,请不要缓存它。 (但完全缓存页面。)
另请注意,如果您使用LoadControl
,则首先需要将您收到的实例转换为正确的用户控件类型,否则使用属性的唯一方法是使用a)反射,或b)后期绑定(VB.NET可以为你做IIRC)。