none
Wie ComboBox mit DataSource zusätzlichen Eintrag hinzufügen? RRS feed

  • Frage

  • Hallo,
    ich zeige in einer ComboBox den Inhalt einer Spalte von einer Tabelle an.
    Das funktioniert. Die Auswahl soll auch nicht in der Datenbank gespeichert werden; also nur anzeigen.

    comboBoxTest.DataSource = testDataSet.TestTabelle.DefaultView;
    comboBoxTest.DisplayMember = "SpalteA";
    comboBoxTest.SelectedIndex = -1;

    Wie schaffe ich es, zusätzlich einen leeren Eintrag in der ComboBox anzuzeigen (der nicht in der Tabelle existiert),
    damit der User diesen leeren Eintrag auswählen kann, weil er keinen Wert daraus will bzw. die Funktion abwählt?


    Alexander

    Freitag, 2. März 2012 11:07

Antworten

  • comboBoxTest.Items.Insert(0, new ListItem("Neu", "-1"));

    Wichitg ist das diese Zeile unter comboBox.Test.DataBind(); steht damit der Eintrag nicht überschrieben wird von der Datenbindung.

    0 = index position, in dem falle steht der eintrag ganz oben;

    "Neu" = der anzuzeigende Name, hier "Neu" , Du kannst aber auch sowas machen " " wenn du einen Leeren eintrag haben möchtest;

    "-1" = die -id des Eintrags. Wenn du in abhängigkeit der Auswahl im Code weiter arbeitest musst  du natürlich auf den Value der ComboBox Prüfen ob der Benutzer den "Neu" Eintrag gewählt hat.

    z.b.

    if( "-1" != comboBoxTest.SelectedItem.Value)

    {

      Code bei "gültiger" Auswahl // in datenbank vorhandener Eintrag

    }

    else

    {

    Code bei "Neu" bzw. Leerer Eintrag

    }


    Mittwoch, 7. März 2012 09:24

Alle Antworten