Control.EnsureChildControls Метод

Определение

Определяет наличие у серверного элемента управления дочерних элементов управления.Determines whether the server control contains child controls. Если дочерних элементов управления нет, они будут созданы.If it does not, it creates child controls.

protected:
 virtual void EnsureChildControls();
protected virtual void EnsureChildControls ();
abstract member EnsureChildControls : unit -> unit
override this.EnsureChildControls : unit -> unit
Protected Overridable Sub EnsureChildControls ()

Примеры

В следующем примере используется метод EnsureChildControls, чтобы убедиться, что текущий серверный элемент управления имеет дочерние элементы управления.The following example uses the EnsureChildControls method to ensure that the current server control has child controls. Затем он получает или задает свойство Text для дочернего веб-элемента управления TextBox в объекте ControlCollection текущего элемента управления сервера.It then gets or sets a Text property for a child TextBox Web control in the current server control's ControlCollection object.

Важно!

В этом примере имеется текстовое поле, принимающее вводимые пользователем данные, что является потенциальной угрозой безопасности.This example has a text box that accepts user input, which is a potential security threat. По умолчанию данные, вводимые пользователем на веб-страницах ASP.NET, проверяются на наличие скриптов и HTML-элементов.By default, ASP.NET Web pages validate that user input does not include script or HTML elements. Дополнительные сведения см. в разделе Общие сведения об использовании сценариев.For more information, see Script Exploits Overview.

// 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


Комментарии

Этот метод сначала проверяет текущее значение свойства ChildControlsCreated.This method first checks the current value of the ChildControlsCreated property. Если это значение равно false, вызывается метод CreateChildControls.If this value is false, the CreateChildControls method is called.

Метод EnsureChildControls обычно используется в составных элементах управления, которые являются элементами управления, которые используют дочерние элементы управления для некоторых или всех их функциональных возможностей.The EnsureChildControls method is typically used in composite controls, which are controls that use child controls for some or all their functionality. Метод EnsureChildControls вызывается, чтобы убедиться, что дочерние элементы управления созданы и готовы обрабатывать ввод, выполнять привязку данных или выполнять другие задачи.The EnsureChildControls method is called in order to make sure that child controls have been created and are ready to process input, to perform data binding, or to perform other tasks.

Элемент управления GridView является примером составного элемента управления.The GridView control is an example of a composite control. Он создает дочерние элементы управления, такие как Table, TableRow, TableCell, Labelи TextBox, которые используются для визуализации таблицы HTML, создаваемой GridView.It creates child controls such as Table, TableRow, TableCell, Label, and TextBox controls, which are used to render the HTML table that the GridView generates.

В большинстве случаев пользовательским разработчикам серверных элементов не нужно переопределять этот метод.In most cases, custom server control developers do not have to override this method. При переопределении этого метода используйте его таким же образом, как и поведение по умолчанию.If you do override this method, use it in a way similar to the default behavior.

Применяется к

Дополнительно