Pregunta

Estoy trabajando con referencia a controles de usuario en mi página ASPX y me pregunto cuál es la diferencia entre estas dos directivas de página.

@Reference @Register

¿Fue útil?

Solución

@Register es la directiva de uso más común. Se utiliza esta opción cuando desee utilizar un control de usuario en su página aspx o ascx declarativa. @Register asocia el control con un prefijo específico y, a continuación, puede usarlo en su margen de beneficio.

@Reference sólo se indica a ASP.NET para compilar el otro control cuando se compila el aspx o página ascx. Que se asegura de que esté disponible en tiempo de ejecución y se puede agregar a la jerarquía de control mediante programación. Esto es menos común ya que cambiar dinámicamente controles de usuario en tiempo de ejecución no es Comon.

Aquí hay un post buen blog al respecto.

http: //weblogs.asp. net / johnkatsiotis / archivo / 2008/08/13 / la-referencia-directive.aspx

Otros consejos

@Register se utiliza principalmente para el registro de la etiqueta prefijos a declarativa controles de uso dentro de una página.

<%@ Register tagprefix="my" namespace="MyNamespace" %>

<my:CustomControl runat=server />

@Reference se utiliza principalmente para hacer referencia a una página o control del usuario (por nombre de archivo o la ruta de acceso virtual) a programáticamente se refieren a miembros de la página o de control.

<%@ Reference Control="MyControl.ascx" %>

<%  MyControl ctrl = (MyControl) Page.LoadControl("MyControl.ascx");
    ctrl.CustomProperty = "..."; //REFERENCE directive is needed to access property
%>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top