TemplateControl.LoadControl Método

Definição

Carrega um Control.

Sobrecargas

Name Description
LoadControl(String)

Carrega um Control objeto a partir de um ficheiro com base num caminho virtual especificado.

LoadControl(Type, Object[])

Carrega um Control objeto com base num tipo especificado e nos parâmetros do construtor.

Observações

Quando carregas um controlo num controlo de contentor, o contentor eleva todos os eventos do controlo adicionado até estar em dia com o evento atual. No entanto, o controlo adicional não acompanha o processamento de dados postback. Para que um controlo adicional participe no processamento de dados pós-retorno, incluindo validação, o controlo deve ser adicionado no Init evento e não no próprio Load evento.

LoadControl(String)

Carrega um Control objeto a partir de um ficheiro com base num caminho virtual especificado.

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

O caminho virtual para um ficheiro de controlo.

Devoluções

Devolve o especificado Control.

Exceções

O caminho virtual é null ou vazio.

Exemplos

O exemplo de código seguinte demonstra como usar o método LoadControl para adicionar um controlo de utilizador a uma página ASP.NET.

No OnInit método de eventos, esta página utiliza o LoadControl método para criar programaticamente um controlo do utilizador sobre a página. O método adiciona o controlo à Controls propriedade de um PlaceHolder controlo de servidor Web chamado Placeholder1.

Para a definição da MyControl classe usada neste exemplo de código, veja 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

Observações

Se o controlo suportar cache, o objeto devolvido pelo LoadControl método não é realmente um Control objeto; na verdade, é um PartialCachingControl objeto. Se o virtualPath parâmetro for relativo, o caminho do controlo carregado é relativo ao caminho do TemplateControl.

Quando carregas um controlo num controlo de contentor, o contentor eleva todos os eventos do controlo adicionado até estar em dia com o evento atual. No entanto, o controlo adicional não acompanha o processamento de dados postback. Para que um controlo adicional participe no processamento de dados pós-retorno, incluindo validação, o controlo deve ser adicionado no Init evento e não no próprio Load evento.

Ver também

Aplica-se a

LoadControl(Type, Object[])

Carrega um Control objeto com base num tipo especificado e nos parâmetros do construtor.

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

O tipo de controlo.

parameters
Object[]

Um array de argumentos que correspondem em número, ordem e tipo aos parâmetros do construtor a invocar. Se parameters for um array vazio ou null, o construtor que não toma parâmetros (o construtor sem parâmetros) é invocado.

Devoluções

Devolve o especificado UserControl.

Observações

Se o controlo do utilizador suportar cache, o objeto devolvido pelo LoadControl método não é realmente um UserControl objeto; na verdade, é um PartialCachingControl objeto.

Quando carregas um controlo num controlo de contentor, o contentor eleva todos os eventos do controlo adicionado até estar em dia com o evento atual. No entanto, o controlo adicional não acompanha o processamento de dados postback. Para que um controlo adicional participe no processamento de dados pós-retorno, incluindo validação, o controlo deve ser adicionado no Init evento e não no próprio Load evento.

Ver também

Aplica-se a