Control.EnsureChildControls Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Determina si el control de servidor contiene controles secundarios. Si no tiene controles secundarios, los crea.
protected:
virtual void EnsureChildControls();
protected virtual void EnsureChildControls ();
abstract member EnsureChildControls : unit -> unit
override this.EnsureChildControls : unit -> unit
Protected Overridable Sub EnsureChildControls ()
Ejemplos
En el ejemplo siguiente se usa el EnsureChildControls método para asegurarse de que el control de servidor actual tiene controles secundarios. A continuación, obtiene o establece una Text propiedad para un control Web secundario TextBox en el objeto del control de ControlCollection servidor actual.
Importante
Este ejemplo tiene un cuadro de texto que acepta datos proporcionados por el usuario, lo que puede suponer una amenaza para la seguridad. De forma predeterminada, ASP.NET Web Pages valida que los datos proporcionados por el usuario no incluyen elementos HTML ni de script. Para más información, consulte Información general sobre los ataques mediante scripts.
// Ensure the current control has children,
// then get or set the Text property.
public int Value {
get {
this.EnsureChildControls();
return Int32.Parse(((TextBox)Controls[1]).Text);
}
set {
this.EnsureChildControls();
((TextBox)Controls[1]).Text = value.ToString();
}
}
' Ensure the current control has children,
' then get or set the Text property.
Public Property Value() As Integer
Get
Me.EnsureChildControls()
Return Int32.Parse(CType(Controls(1), TextBox).Text)
End Get
Set
Me.EnsureChildControls()
CType(Controls(1), TextBox).Text = value.ToString()
End Set
End Property
Comentarios
Este método comprueba primero el valor actual de la ChildControlsCreated propiedad . Si este valor es false
, se llama al CreateChildControls método .
El EnsureChildControls método se usa normalmente en controles compuestos, que son controles que usan controles secundarios para algunas o todas sus funciones. Se EnsureChildControls llama al método para asegurarse de que se han creado controles secundarios y están listos para procesar la entrada, para realizar el enlace de datos o para realizar otras tareas.
El GridView control es un ejemplo de un control compuesto. Crea controles secundarios como Table, TableRow, TableCell, Labely TextBox controles , que se usan para representar la tabla HTML que genera .GridView
En la mayoría de los casos, los desarrolladores de controles de servidor personalizados no tienen que invalidar este método. Si invalida este método, úselo de forma similar al comportamiento predeterminado.