Control.EnsureChildControls Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Determina se il controllo server contiene controlli figlio. In caso contrario, li crea.
protected:
virtual void EnsureChildControls();
protected virtual void EnsureChildControls ();
abstract member EnsureChildControls : unit -> unit
override this.EnsureChildControls : unit -> unit
Protected Overridable Sub EnsureChildControls ()
Esempio
Nell'esempio seguente viene utilizzato il EnsureChildControls metodo per assicurarsi che il controllo server corrente disponga di controlli figlio. Ottiene o imposta quindi una Text proprietà per un controllo Web figlio TextBox nell'oggetto del ControlCollection controllo server corrente.
Importante
L'esempio include una casella di testo che accetta l'input dell'utente e rappresenta quindi una potenziale minaccia alla sicurezza. Per impostazione predefinita, le pagine Web ASP.NET verificano che l'input dell'utente non includa script o elementi HTML. Per altre informazioni, vedere Cenni preliminari sugli attacchi tramite script.
// 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
Commenti
Questo metodo controlla innanzitutto il valore corrente della ChildControlsCreated proprietà. Se questo valore è false
, viene chiamato il CreateChildControls metodo .
Il EnsureChildControls metodo viene in genere usato nei controlli compositi, ovvero controlli che usano controlli figlio per alcune o tutte le relative funzionalità. Il EnsureChildControls metodo viene chiamato per assicurarsi che i controlli figlio siano stati creati e siano pronti per elaborare l'input, per eseguire il data binding o per eseguire altre attività.
Il GridView controllo è un esempio di controllo composito. Crea controlli figlio, ad Tableesempio , TableRow, TableCellLabel, e TextBox , che vengono usati per eseguire il rendering della tabella HTML generata da GridView .
Nella maggior parte dei casi, gli sviluppatori di controlli server personalizzati non devono eseguire l'override di questo metodo. Se si esegue l'override di questo metodo, usarlo in modo simile al comportamento predefinito.