Combobox an Array binden

26/12/2007 - 10:58 von Manfred | Report spam
Hallo Leute,

als Neueinsteiger mit Erfahrungen in VBA möchte ich ein mehrspaltiges Array
mit einer Combobox verbinden.
MIt VBA kein Problem:
im Designer Anzahl Spalten angeben, gebundene Spalte definieren
Die Eigenschaft List mit dem Array verknüpfen, fertig

Leider finde ich nichts davon in VB 2005 Express.
Wie stelle ich ein mehrspaltiges Array als Listeninhalt in der Combobox dar?
Wie binde ich den Steuerelementinhalt an eine Spalte im Array.

Für einen Tip wàre ich dankbar.

Grüße

Manfred
 

Lesen sie die antworten

#1 Peter Fleischer
27/12/2007 - 08:57 | Warnen spam
"Manfred" schrieb im Newsbeitrag
news:

als Neueinsteiger mit Erfahrungen in VBA möchte ich ein mehrspaltiges
Array
mit einer Combobox verbinden.
MIt VBA kein Problem:
im Designer Anzahl Spalten angeben, gebundene Spalte definieren
Die Eigenschaft List mit dem Array verknüpfen, fertig



Hi Manfred,
VBA hat mit den Forms2.0-Steuerelementen auch eine mehrspaltige ComboBox,
die an ein Array gebunden werden kann. In .NET gibt es das nicht.

Leider finde ich nichts davon in VB 2005 Express.
Wie stelle ich ein mehrspaltiges Array als Listeninhalt in der Combobox
dar?
Wie binde ich den Steuerelementinhalt an eine Spalte im Array.

Für einen Tip wàre ich dankbar.



Die Herangehensweise in .NET ist in vielen Varianten möglich. Ein Array
sollte für die einfache Verwaltung einer zeitweilig festen Menge von
Objekten eingesetzt werden. Für die Bindung an Steuerelemente sollten besser
(variabel lange) bindbare Listen von Objekten eingesetzt werden. Am
einfachsten ist es, wenn die in der Liste enthaltenen Objekte eine
ToString-Metode haben, die dann automatisch für die Anzeige in der ComboBox
herangezogen wird. Wenn eine konkrete Objekteigenschaft angezeigt werden
soll, dann kann dafür die DataMember-Eigenschaft der CombpBox genutzt
werden.

Die -NET-ComboBox ist einspaltig. Wenn mehrere Eigenschaften angezeigt
werden sollen, kann man diese verknüpfen und als "lange Zeichenkette"
bereitsstellen (z.B. in der ToString-Methode). Alternativ gibt es auch die
aus VB6 bekannte Methode zum Setzen von Tabstopps über entsprechende
Windows-Nachrichten.

Alternativ kann man auch ein Array so kapseln, dass die genutzte Klasse eine
bindbare Klasse ist, die den Arrayinhalt als Liste dem gebundenen
Steuerelement bereitstellt.

Als Anfànger solltes du erst einaml anstelle des arrays besipielsweise eine
ArrayList nutzen und damit den Umgang erlernen.

Viele Gruesse

Peter

Ähnliche fragen