[Vb/C#] Supprimer un contrôle via son nom

Publié le 28 janvier 2009 par Jeremy.jeanson

Voici un petit code qui pourra être utile pour ce qui se demande encore comment retrouver un control dans une collection et qui restent septiques sur l' utilité de Linq.

Dans cet exemple je cherche à supprimer un contrôle dont le nom est Button1.

Vb
Dim monControl As Control = Me.Controls.OfType(Of Control) _
	.FirstOrDefault(Function(c) c.Name = "Button1")

If monControl IsNot Nothing Then
	Me.Controls.Remove(monControl)
    monControl.Dispose()
    monControl = Nothing
End If

C#
Control monControl = this.Controls.OfType<Control>()
	.FirstOrDefault(c => c.Name == "button1");

if (monControl != null)
{
	this.Controls.Remove(monControl);
    monControl.Dispose();
    monControl = null;
}