Control.HasChildren Propiedad

Definición

Obtiene un valor que indica si el control contiene uno o más controles secundarios.

C#
[System.ComponentModel.Browsable(false)]
public bool HasChildren { get; }

Valor de propiedad

true si el control contiene uno o más controles secundarios; en caso contrario, false.

Atributos

Ejemplos

En el ejemplo de código siguiente se establecen los BackColor controles y ForeColor en los colores predeterminados del sistema. El código se llama recursivamente si el control tiene controles secundarios. Este ejemplo de código requiere que tenga un Form control con al menos un control secundario; sin embargo, un control de contenedor secundario, como o PanelGroupBox, con sus propios controles secundarios demostraría mejor la recursividad.

C#
// 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);
      }
   }
}

Comentarios

Si la Controls colección tiene un Count valor mayor que cero, la HasChildren propiedad devolverá true. El acceso a la HasChildren propiedad no fuerza la creación de un Control.ControlCollection objeto si el control no tiene elementos secundarios, por lo que hacer referencia a esta propiedad puede proporcionar una ventaja de rendimiento al caminar por un árbol de controles.

Se aplica a

Producto Versiones
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Consulte también