2009-02-07 3 views
22

Was ist eine Komponentenklasse und wo würde ich normalerweise eine Komponente verwenden?C# - Was ist eine Komponente und wie wird sie normalerweise verwendet?

Wenn ich meinem Projekt in VS.NET 2008 ein neues Element hinzufüge, besteht eine der Optionen darin, eine Komponente hinzuzufügen. Ich bin mir nicht einmal sicher, ob ich verstehe, was eine Komponente ist - aber ich würde gerne etwas mehr über sie erfahren.

Könnte mir jemand sie erklären oder vielleicht auf ein Online-Tutorial hinweisen, das mir helfen würde.

Antwort

11

Nun, im Allgemeinen ist eine Komponente ein Teil einer Sache. Insbesondere in .NET ist eine Komponente eine Klasse, die IComponent interface implementiert, die angibt, dass eine Klasse mit ihrem logischen Container interagieren kann.

Meistens sehen Sie dies in Form von Design-Unterstützung, in der Klassen mit ihrem Host im Designer interagieren, aber das ist keine strenge Voraussetzung.

4

Wenn Sie eine Klasse bedeuten, die von System.ComponentModel.Component, wie zum Beispiel erbt die System.Windows.Forms.BindingSource und stark typisierte Datasets, wird dies ermöglichen eine Instanz auf der Visual Studio-Entwurfsoberfläche zu ziehen (auf einem Formular in Entwurfszeit), und stellen einige Eigenschaften, die das Eigenschaftenraster verwenden.

Sobald eine Instanz einer solchen Komponente im Formular vorhanden ist, kann sie von anderen Komponenten/Steuerelementen gefunden werden. Zum Beispiel kann eine BindingSource als Datenquelle für eine Rasteransicht oder ein anderes Steuerelement ausgewählt werden.

5

Component Class ist für die Freigabe von Objekten zwischen Anwendungen.

In der Regel zum Ablegen von Objekt wie Outlook-E-Mail an eine Anwendung.

+2

+1 für die Erwähnung der Hauptzweck der .NET-Komponente-Klasse. –