Forum: PC-Programmierung C# Anfängerfragen, ListBox


von Robert S. (razer) Benutzerseite


Lesenswert?

Hallo an alle,

Da ich mir gezwungenermaßen C# beibringen muss hab ich einige Fragen. 
Prinzipiell objektorientiert programmieren kann ich, da ich aus der 
Java-Ecke komme.

Nun habe ich eine Frage zur ListBox. In Java habe ich es immer so 
realisiert, ich habe eine Datenobejektklasse und eine Collection-Klasse 
die ich vom AbstractListModel ableite. Über das Model verbinde ich die 
Datenklasse mit der Anzeige.

In C# gibt es das so direkt ja nicht. Nach Überlegen habe ich folgenden 
Ansatz:

Ich habe wieder eine Datenklasse:
1
class Wetterwert
2
{
3
...
4
}

Als Collectionklasse habe ich eine Klasse die ich von 
BindingList<Wetterwert> ableite:
1
class Wetterwerte : BindingList<Wetterwert>
2
{
3
...
4
}

In der GUI verknüpfe ich dde Collection mit der Listbox folgendermaßen:
1
{
2
Wetterwerte wetterwerte = new Wetterwerte();
3
lbWetterwerte.DataSource = wetterwerte;  //Listbox aus der GUI
4
}

Ist dieser Ansatz so richtig? Gibt es Verbesserungsmöglichkeiten?

Danke im Voraus
lg Robert

von Robert S. (razer) Benutzerseite


Lesenswert?

Weiß keiner was dazu?

von Peter (Gast)


Lesenswert?

> Ist dieser Ansatz so richtig? Gibt es Verbesserungsmöglichkeiten?
kommt darauf an, ich habe es nie so kompliziert gemacht und die Einträge 
in die Listbox einfach mit AddItem hinzugefügt. Und zwar nicht den 
String sonder ein Objekt was eine ToString Methode hat.

von Marcus B. (raketenfred)


Lesenswert?

möchtest du einfach nur Daten anzeigen in einer listbox?? (listbox=Liste 
mit einer Spalte), oder möchtest du eine ganze Tabelle anzeigen??

soweit ich weiß, nimmt die listbox nur Strings über die Add methode 
entgegen

also listbox1.Add("Text"); und fertig, muss man aber dann selber 
organisieren alles etc

aber für einfache sachen reicht das

von Peter (Gast)


Lesenswert?

Marcus B. schrieb:
> soweit ich weiß, nimmt die listbox nur Strings über die Add methode
> entgegen

nein es nicht Object entgegeben.

von C# (Gast)


Lesenswert?

Eigentlich sollte mit einer Listbox auch Databinding möglich sein (Hat 
verschiedene Vorteile). Aber die Listbox.Items.Add Methode nimmt auch 
Objekte an.

Die Frage ist nun ob es sinnvoll ist für eine Listbox den Aufwand mit 
den Databinding zu betreiben (Bei einem Datagridview ist es zweifelslos 
sinnvoll)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.