Wszystkie kontrolki, które można użyć w WinForms mają swoje klasy, np. Button, Label, itd. Wszystkie one dziedziczą z klasy głównej Control.
Za pomocą kontrolek grupujących (np. GroupBox) można grupować obiekty, aby łatwiej było je modyfikować lub umieszczać w formularzu.
// Przykład kodu, który zmieni text wszystkich przycisków wewnątrz grupy
void ChangeBtnName()
{
int ind = 0;
foreach(Control c in groupBox1.Controls)
{
c.Text = "Ctrl " + ind;
ind++;
}
}
Zmiana właściwości (koloru tła) kontrolek wewnątrz grupy
void ModifyGroupControls()
{
foreach (Control c in groupBox1.Controls)
{
//c.BackColor = Color.Teal;
c.BackColor = Color.FromArgb(255,120,217,140);
}
}
Tworzenie listy <Control>z obiektami podrzędnymi i wyświetlenie ich nazwy
// Tworzenie listy <Control>z obiektami podrzędnymi i wyświetlenie ich nazwy
using System;
using System.Collections.Generic;
using System.Windows.Forms;
namespace Test
{
public partial class Form1 : Form
{
List<Control> ctList = new List<Control> ();
public Form1()
{
InitializeComponent();
AddToList(ctList);
label2.Text = DisplayListNames(ctList);
}
void AddToList(List<Control>myList) {
foreach(Control c in groupBox1.Controls)
{
myList.Add (c);
}
}
string DisplayListNames(List<Control> myList)
{
string listNames = "";
foreach(Control c in myList)
{
listNames += c.Name;
}
return listNames;
}
}
}