TemplateControl.LoadControl Método

Definición

Carga un objeto Control.

Sobrecargas

LoadControl(String)

Carga un objeto Control de un archivo basado en una ruta de acceso virtual especificada.

LoadControl(Type, Object[])

Carga un objeto Control basado en un tipo especificado y en parámetros de constructor.

Comentarios

Cuando se carga un control en un control de contenedor, el contenedor genera todos los eventos del control agregado hasta que se ha detectado el evento actual. Sin embargo, el control agregado no se actualiza con el procesamiento de datos de postback. Para que un control agregado participe en el procesamiento de datos de postback, incluida la validación, el control debe agregarse en el Init evento en lugar de en el Load evento .

LoadControl(String)

Carga un objeto Control de un archivo basado en una ruta de acceso virtual especificada.

public:
 System::Web::UI::Control ^ LoadControl(System::String ^ virtualPath);
public System.Web.UI.Control LoadControl (string virtualPath);
member this.LoadControl : string -> System.Web.UI.Control
Public Function LoadControl (virtualPath As String) As Control

Parámetros

virtualPath
String

Ruta de acceso virtual a un archivo de controles.

Devoluciones

Devuelve la Control especificada.

Excepciones

La ruta de acceso virtual es null o está vacía.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar el LoadControl método para agregar un control de usuario a una página de ASP.NET.

En el OnInit método event, esta página usa el LoadControl método para crear mediante programación un control de usuario en la página. El método agrega el control a la Controls propiedad de un PlaceHolder control de servidor web denominado Placeholder1.

Para obtener la definición de la MyControl clase que se usa en este ejemplo de código, vea TemplateControl.

void Page_Init(object sender, System.EventArgs e)
{
    // Instantiate the UserControl object
    MyControl myControl1 =
        (MyControl)LoadControl("TempControl_Samples1.ascx.cs");
    PlaceHolder1.Controls.Add(myControl1);
}
Sub Page_Load(ByVal Sender As Object, ByVal e As EventArgs)
    ' Obtain a UserControl object MyControl from the
    ' user control file TempControl_Samples1.ascx.vb
    Dim myControl1 As MyControl = CType(LoadControl("TempControl_Samples1.vb.ascx"), MyControl)
    Controls.Add(myControl1)
End Sub

Comentarios

Si el control admite el almacenamiento en caché, el objeto devuelto por el LoadControl método no es realmente un Control objeto; en su lugar, es un PartialCachingControl objeto . Si el virtualPath parámetro es relativo, la ruta de acceso del control cargado es relativa a la ruta de acceso TemplateControlde .

Cuando se carga un control en un control de contenedor, el contenedor genera todos los eventos del control agregado hasta que se ha detectado el evento actual. Sin embargo, el control agregado no se actualiza con el procesamiento de datos de postback. Para que un control agregado participe en el procesamiento de datos de postback, incluida la validación, el control debe agregarse en el Init evento en lugar de en el Load evento .

Consulte también

Se aplica a

LoadControl(Type, Object[])

Carga un objeto Control basado en un tipo especificado y en parámetros de constructor.

public:
 System::Web::UI::Control ^ LoadControl(Type ^ t, cli::array <System::Object ^> ^ parameters);
public System.Web.UI.Control LoadControl (Type t, object[] parameters);
member this.LoadControl : Type * obj[] -> System.Web.UI.Control
Public Function LoadControl (t As Type, parameters As Object()) As Control

Parámetros

t
Type

Tipo del control.

parameters
Object[]

Matriz de argumentos que coinciden en número, orden y tipo con los parámetros del constructor al que se va a invocar. Si parameters es una matriz vacía o null, se invoca al constructor que no toma parámetros (constructor sin parámetros).

Devoluciones

Devuelve la UserControl especificada.

Comentarios

Si el control de usuario admite el almacenamiento en caché, el objeto devuelto por el LoadControl método no es realmente un UserControl objeto; en su lugar, es un PartialCachingControl objeto .

Cuando se carga un control en un control de contenedor, el contenedor genera todos los eventos del control agregado hasta que se ha detectado el evento actual. Sin embargo, el control agregado no se actualiza con el procesamiento de datos de postback. Para que un control agregado participe en el procesamiento de datos de postback, incluida la validación, el control debe agregarse en el Init evento en lugar de en el Load evento .

Consulte también

Se aplica a