Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

Control.HasChildren-Eigenschaft

 

Veröffentlicht: Oktober 2016

Ruft einen Wert ab, der angibt, ob das Steuerelement ein oder mehrere untergeordnete Steuerelemente enthält.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

[BrowsableAttribute(false)]
public bool HasChildren { get; }

Eigenschaftswert

Type: System.Boolean

true, wenn das Steuerelement ein oder mehrere untergeordnete Steuerelemente enthält, andernfalls false.

If the P:System.Windows.Forms.Control.Controls collection has a P:System.Windows.Forms.Layout.ArrangedElementCollection.Count greater than zero, the P:System.Windows.Forms.Control.HasChildren property will return true. Accessing the P:System.Windows.Forms.Control.HasChildren property does not force the creation of a T:System.Windows.Forms.Control.ControlCollection if the control has no children, so referencing this property can provide a performance benefit when walking a tree of controls.

The following code example sets the P:System.Windows.Forms.Control.BackColor and P:System.Windows.Forms.Control.ForeColor of the controls to the default system colors. The code recursively calls itself if the control has any child controls. This code example requires that you have a T:System.Windows.Forms.Form with at least one child control; however, a child container control, like a T:System.Windows.Forms.Panel or T:System.Windows.Forms.GroupBox, with its own child control(s) would better demonstrate the recursion.

// Reset all the controls to the user's default Control color. 
private void ResetAllControlsBackColor(Control control)
{
   control.BackColor = SystemColors.Control;
   control.ForeColor = SystemColors.ControlText;
   if(control.HasChildren)
   {
      // Recursively call this method for each child control.
      foreach(Control childControl in control.Controls)
      {
         ResetAllControlsBackColor(childControl);
      }
   }
}

.NET Framework
Verfügbar seit 1.1
Zurück zum Anfang
Anzeigen: