Zum Inhalt springen

Attribute zwischen Klassen übergeben


LukOnline

Empfohlene Beiträge

Hey!

Ich habe mir eine Klasse von ListBox abgeleitet und von dieser Klasse ein Objekt im MainForm erstellt.

public class ToolTipListBox : ListBox

Diese Klasse zeigt beim überfahren eines Items in der Listbox einen ToolTip.

Jetzt will ich aber, dass der ToolTip eine Variable vom Typ <List> (also nur einen Listpunkt) aus dem MainForm anzeigt.

Habe eine GetMethode erstellt mit der ich aus dem MainForm die <List> Variable zurückgebe.

Nur wie kann ich jetzt in der Klasse ToolTipListBox auf die Get-Methode zugreifen? Notfalls kann ich die Variable auch als public deklarieren...

Vielen Dank schonmal für eure Hilfe!

LG Luk

Link zu diesem Kommentar
Auf anderen Seiten teilen

Nur wie kann ich jetzt in der Klasse ToolTipListBox auf die Get-Methode zugreifen? Notfalls kann ich die Variable auch als public deklarieren...

LG Luk

Hmm...recht wenig Code oder nicht ordentlich beschrieben.

Wenn ich es aber richtig verstanden habe, soll die Liste aus der MainForm in ToolTipListBox-Klasse übergeben werden?!

Übergib die Liste per Constructor an die ToolTipListbox-Klasse.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo!

Ich habe es hinbekommen!

Sorry wenn es schwer zu verstehen war...

Also nochmal die Erklärung.

Ich habe eine Klasse ListBoxToolTip angeleitet von ListBox.

public class ToolTipListBox : ListBox
Der einzige unterschied ist, dass meine Klasse beim überfahren mit der Maus einen String anzeigt. Der String, den ich anzeigen will, ist jedoch in einem Objekt, das im FormMain erstellt wurde. Ich habe von der Klasse ListBoxToolTip keinen Zugriff auf die FormMain-Klasse! D.h. ich muss den String an die ToolTipListBox-Klasse übergeben. Meine Frage war also wie ich das anstelle. Inzwischen habe ich die Antwort gefunden... Form1.Designer.cs

private void InitializeComponent()

{

// ... viele Formularelemente

this.listBox_EMailAdressen = new ToolTipListBox(this);

// ... viele Formularelemente

}

Klasse ToolTipistBox

public class ToolTipListBox : ListBox

{

private FormMain Uebergabe;


public ToolTipListBox(FormMain MainForm)

{

Uebergabe = MainForm;

// Zugriff auf Public-Attribute des Mainforms nun in dieser Klasse möglich mit:

// Uebergabe.Attributname;

}

}

Bei Rückfragen einfach melden ;-)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Du übergibst die ganze MainForm? Warum nicht nur die Collection? Oder brauchst Du alle enthaltenen Elemente?

Naja, alle Elemente brauche ich nicht... Nur ein paar, jedoch muss ich auch auf eine Methode des MainForms zugreifen.

Alles zu übergeben ist warscheinlich ziemlich Systemlastig oder?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...