Combobox

  • VB.NET

Es gibt 10 Antworten in diesem Thema. Der letzte Beitrag () ist von Luigi Lan.

    Hallo,

    ich habe eine Frage zu der Combobox. Die Auswahl in der Combobox sind nur Zahlen. Zurzeit bin ich noch Anfänger, möchte mich aber hoch arbeiten. Jetzt komme ich zurück auf meine Frage. Ich programmiere gerade einen Kaufplaner mit Comboboxen. Doch ich möchte gerne, dass die aktive Auswahl( das was in der Combobox gerade ausgewählt ist) mehrerer Comboboxen gespeichert werden und dannach, wenn das Programm dann hochfährt, dass man diese dann auch Laden kann. Sie sollen dann an der richtigen Position, wo sie gespeichert wurden, auch geladen werden. Ich habe es immer einzeln abgespeichert und geladen mithilfe von "My.Settings". Das ist ganz schön anstrengend und auch wahrscheinlich unnötig. Ich hoffe demnach auf eine gute Lösung.

    Vielen Dank im Voraus.


    Aus den Boarddiskussionen verschoben
    -Artentus

    Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von „Artentus“ ()

    Ja Danke Erfinder des Rades,

    ich möchte gern ein Kaufplaner programmieren. Die Auswahl die in der Combobox ausgewählt wird, ist eine Zahl. Ich möchte diese gerne abspeichern und dann beim hochfahren des Programmes, die ausgewählten Zahlen zurück in ihre jeweilige Position bringen.
    Es wäre super, wenn mir jemand hierbei helfen könnte. Es geht nähmlich um meinen Praktikumsplatz, der mir sehr wichtig ist.
    Ich hoffe demnach auf eine gute und hilfreiche Lösung.

    Vielen Dank im Voraus
    Lieber Erfinder des Rades,

    ich meine es gibt zb. 5 comboboxen. Das, was in der Combobox ausgewählt wird(jeweils eine Zahl), genau das soll dann gespeichert werden. Zb.
    • Combobox1=2
    • Combobox2=5
    • Combobox3=1
    • Combobox4=7
    • Combobox5=3
    Diese Auswahl der 5 comboboxen soll gespeichert werden und deren Position eingehalen werden.
    Mein Problem mit 5 Comboboxen zu lösen, ist einfach. Nur das Problem ist ich habe über 40 Comboboxen.
    Bitte hilfe mir
    Ja es sind die Zahlen 1-12. Aber es sollen ja wie schon gesagt die Ausgewählten Zahlen in deren Position gespeichert werden.
    Und dann auch in deren Position geladen werden. Aber erklärt es mir bitte in Vb.net-Sprache. Danke im Voraus.

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private _Combos As ComboBox()
    3. Public Sub New()
    4. InitializeComponent()
    5. Dim numbs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}
    6. _Combos = {ComboBox1, ComboBox2, ComboBox3, ComboBox4, ComboBox5, ComboBox6, ComboBox7}
    7. For Each cmb In _Combos
    8. cmb.DataSource = numbs.ToArray
    9. Next
    10. Dim selIndicees = Array.ConvertAll(My.Settings.SelectedIndicees.Split, AddressOf Integer.Parse)
    11. For i = 0 To selIndicees.Length - 1
    12. _Combos(i).SelectedIndex = selIndicees(i)
    13. Next
    14. End Sub
    15. Private Sub Form1_FormClosed(ByVal sender As Object, ByVal e As FormClosedEventArgs) Handles Me.FormClosed
    16. Dim selIndicees = Array.ConvertAll(_Combos, Function(cmb) cmb.SelectedIndex)
    17. My.Settings.SelectedIndicees = String.Join(" ", selIndicees)
    18. End Sub
    19. End Class
    Dateien
    Super,

    das funktioniert auf jedenfall. Nur jede Combobox hat eine andere Bezirksgröße( A hat numbers bis 10, B hat numbers bis 5)
    ich stelle die manuell zusammen. Es wäre total super von dir, wenn du die gleiche Zusammenstellung halt ohne die feste Bezirksanzahl mir schicken würdest. Und ich möchte dich noch auf meine Label-Frage aufmerksam machen. Schau sie dir bitte an. Und schicke mir bitte nun den neuen Quellcode. Das wäre total perfekt. Danke im Voraus
    Ja danke,

    du hast ja auch total Recht, dass ich das auch selber machen muss. Das Problem ist ich bin kein Profi aber auch kein Anfänger.
    Nur halt die Zusammenstellung deines Quellcodes verstehe ich 0%. Somit kann ich auch das Bezirksproblem nicht alleine ändern.
    Deine Hilfe bisher ist schon super, aber ich kann deinen Quellcode nicht verstehen oder umprogrammieren. Eine hilfreiche Erklärung deines Quellcodes wäre echt nett.