con*_*att 29 asp.net page-directives
我正在我的ASPX页面上引用用户控件,我想知道这两个页面指令之间的区别.
Mar*_*ade 21
@Register主要用于注册标记前缀以声明性地使用页面内的控件.
<%@ Register tagprefix="my" namespace="MyNamespace" %>
<my:CustomControl runat=server />
Run Code Online (Sandbox Code Playgroud)
@Reference主要用于指代页面或用户控件(通过文件名或虚拟路径)以编程方式引用页面或控件的成员.
<%@ Reference Control="MyControl.ascx" %>
<% MyControl ctrl = (MyControl) Page.LoadControl("MyControl.ascx");
ctrl.CustomProperty = "..."; //REFERENCE directive is needed to access property
%>
Run Code Online (Sandbox Code Playgroud)
Sam*_*eff 18
@Register是更常用的指令.如果要以声明方式在aspx或ascx页面中使用用户控件,请使用此方法. @Register将控件与特定前缀相关联,然后您可以在标记中使用它.
@Reference仅在编译aspx或ascx页面时告诉ASP.NET编译其他控件.这可确保它在运行时可用,并可以编程方式添加到控件层次结构中.这不太常见,因为在运行时动态更改用户控件不是comon.
这是一篇关于它的好博文.
http://weblogs.asp.net/johnkatsiotis/archive/2008/08/13/the-reference-directive.aspx
| 归档时间: |
|
| 查看次数: |
20234 次 |
| 最近记录: |