Windows Azure Cloud Storage ermöglicht es Ihnen bereits ab 0,10€ pro GB/Monat die Vorteile der Cloud zu nutzen.
Willkommen bei dotnet-snippets.de! Snippet hinzufügen Login Registrieren
Snippets in der Datenbank: 1549 | Anzahl registrierter User: 1833 | Besucher online: 1012
Hauptmenü
Home
Top Ten
Zufälliger Snippet
FAQs
.NET Community
dotnet-forum.de
dotnet-kicks.de
Social

RSS Feeds
Rss Alle Snippets
Rss C#
Rss VB.NET
Rss C++
Rss ASP.NET
Partner
Member of Microsoft Community Leader/Insider Program (CLIP)

Controls gleichen Typs von einem Container in Winform holen


Autor: Günther Foidl
Sprache: C#
Bewertung:
noch nicht bewertet
Anzahl der Aufrufe: 4860
  
Kick it on dotnet-kicks.de  

Beschreibung:

Es gibt einige Möglichkeiten wie Controls gleichen Typs geholt werden können (zB alle TextBoxen). Hierzu sind genügend Snippets vorhanden.

Zufällig bin ich auf eine LINQ-Erweiterung gestossen welche alle Controls gleichen Typs zurückgibt -> IEnumerable.OfType

Im Code habe ich das ganze in eine Extension-Methode für Controls gepackt.

Ob es Sinn macht die Controls so oder klassisch per Schleife zu holen sei dahingestellt. Weiterer Nachteil ist dass nur die Controls des "befragten" Containers zurückgegeben werden. Hier ist klar die rekursive Schleifenvariante im Vorteil.


Abgelegt unter: Control, Winform, LINQ, IEnumerable, generisch, Generika, Extension.



C#
1
2
3
4
5
6
7
public static class ControlExtension
{
	public static IEnumerable<T> GetControls<T>(this Control container) where T : Control
	{
		return container.Controls.OfType<T>();
	}
}
Sie haben Fragen zu diesem Snippet oder brauchen Hilfe bei der .NET Entwicklung?
Freundliche und kompetente Entwickler helfen Ihnen gern weiter im Forum für .NET Entwicklung.



Kommentare:
(Zum Schreiben von Kommentaren bitte anmelden.)



Diese Snippets könnten für Sie interessant sein:
[C#] Doppelbufferung für Steuerelemente aktivieren
[C#] Transparenter Hintergrund beim Steuerelement
[C#] CursorChanger
[ASP.net] NullReferenceException
[VB.NET] ControlResize wie in der IDE auch zur Laufzeit
[C#] Generischer Invoker für Windows Form Controls
[ASP.net] Formularelement fokusieren auf Ajax Seiten
[C#] Threadsichere und generische Kommunikation Windows Forms
[C#] Events aus Worker-Thread im GUI-Thread werfen! Kein Invoke!
[C#] Eigenschaften aller Steuerlemente eines Formulars setzen
[VB.NET] Alle Textboxen zurücksetzen
[ASP.net] bestimmtes Control auf der aspx-Seite finden
[VB.NET] Oft benötigte Properties von Controls schnell zentral ausfüh
[VB.NET] Das Klick-Event von Controls gemeinsam auffangen und zentral
[VB.NET] Linien u. Kreise a la VB6 - Einfach Zeichnen
[C#] iTunes-ProgressBar
[C#] WaterBox
[VB.NET] Alle Controls einer Form Enablen/Disablen
[C#] Löschen aller TextControls auf einer Form in C#
[VB.NET] Control Resize wie in der IDE auch zur Laufzeit - Extended
[VB.NET] List all controls by using the name of the controls
[C#] Custom Toolstrip Renderer
[C#] Prüfen ob in einem Verzeichnis Schreibrechte verfügbar sind!
[C#] Hochwertige (optisch ansprechende) WPF - Buttons
[C#] WPF - Buttons "OK/Cancel" - endlich unverwechselbar -
[C#] Visuelles Feedback fokussierter Text Boxen
[C#] Globale Fehlerbehandlung für Winform
[C#] Dateien suchen mit LINQ
[C#] Generischer Converter für CSV Dateien
[C#] LINQ kumulierte Summe
[C#] LINQ Rang im Ergebnis
[C#] LINQ-Erweiterung für eindeutige Liste
[C#] Search Plugin-DLLs with one line
[C#] Intellisense Unterstützung für XML Dateien für LINQ
[VB.NET] DataGridView Databinding mit LINQtoSQL
[VB.NET] Master-Detail Ansicht auf SQL Server-Daten mit LINQ-to-SQL
[C#] LINQ to Twitter via kostenloser 3rd Party Library
[C#] SQL Server Daten in Exel-Datei exportieren mit LINQ
[C#] LINQ to Flickr via kostenloser 3rd Party Library nutzen
[VB.NET] ChangeConflicts in LINQ-To-SQL behandeln
[C#] Sequential GUID
[C#] LINQ-Ergebnis in DataTable kopieren
[C#] Listen effektiv in ein Datenbankfeld speichern
[C#] Auf Daten eines SAP-Systems in Silverlight zugreifen
[C#] Kleinsten key in einem Dictionary mit LINQ abfragen
[C#] Daten aus SAP-System als ADO.NET Data Service bereitstellen
[C#] Dateisystem Abfragen mit LINQ erstellen
[C#] XML generieren mit Linq to XML
[C#] Mit LINQ und Join Collections zusammenführen
[C#] Dateien mit bestimmter Extension rekursiv in Array einlesen
[C#] Mit LINQ to SQL auf eine Datenbank zugreifen
[C#] Mit LINQtoXML XML Dateien erzeugen bzw. abfragen
[C#] simple generic pipeline
[C#] Duplikate aus einer IEnumerable entfernen
[C#] Enumerator as a parameter of a method
[C#] Stream, der mit foreach() durchlaufen werden kann
[C#] Eine allgemeine Liste (IEnumerable) in ein Array umwandeln
[C#] Zufälliger Eintrag aus einer Liste (Extension Method)
[C#] Implode und Trim für String-Enumerationen (Extension Method)
[C#] IsNull and IsNullOrEmpty Extension-Methods become Lazy
[C#] Generische Extension zum Auslesen eines Klassen-Attributes
[C#] Threadsicheres Zuweisen von Control-Eigenschaften
[C#] Generische Klasse die Objekte für eine ComboBox kapselt
[C#] Selektieren eines gekapselten Eintrags aus der ComboBox
[C#] Array zur Laufzeit erweitern
[C#] Reflektion und Generika
[C#] Datei/Ordner durch Erweiterungsmethoden abfragen
[C#] Programmpfad mittels Erweiterung ermitteln
[C#] Invoke Beispiel mittels Erweiterungs Methoden.
[C#] DateTime Extensions liefern TimeStamp
[C#] Komplette Exception Message (inkl. InnerExceptions) ausgeben
[VB.NET] Programmpfad mittels Erweiterung ermitteln in VB
[C#] Type Color serialisieren und deserialisieren
[C#] Extension in einem Dateinamen/Pfad ändern
[C#] Threadsicherer Codeaufruf im Control-Kontext (Invoking)
[C#] Color Extension-Methods
[C#] Enum-Extension - Flag in einem Bitfeld gesetzt?
[C#] Anzahl der Monate zwischen 2 DateTime-Objekten (Extension)
[C#] "for" mal anders
[C#] Generische Event Args -> EventArgs
[C#] Lazy Serialization-Extensions including Compression
[C#] SystemIconsImageListWrapper

schlecht sehr gut
1 2 3 4 5 6 7 8 9 10
Nur angemeldete User können Snippets bewerten.