ComboBox-C# WPF-fügen Sie Elemente, Text und Wert

Folgendes gilt für die ComboBox-Steuerelemente in WPF Zeilen hinzufügen. Vorgestellten Beispiele beziehen sich auf-Steuerelemente mit dem Namen „ComboPerson“.

Fügen Sie einen Eintrag in der ComboBox C#-WPF

Fügen Sie eine neue Zeile in die ComboBox’ie implementiert ist, mithilfe der Funktion Elemente (); Als Argument müssen Sie eingeben, die einfach String’iem kann ein neues Objekt ().

Und so den Befehl comboPerson.Items.Add („String“); Dadurch wird eine neue Zeile mit einem Wert von „Words“, „ComboPerson“ genannt wurden hinzugefügt. Eine Ergänzung zu der Liste, so dass Sie über den Befehl realisieren können:

comboPerson.Items.Add(?String1?);
 
comboPerson.Items.Add(?String2?);
 
comboPerson.Items.Add(?String3?);

Hinzufügen von Datensätzen in der Schleife

Natürlich, manuell eingeben jedes Element wäre zeitaufwändig und umständlich, sodass Sie für diese Aufgabe verwenden sollten.

Bevor Sie fortfahren, die Daten zu ergänzen, können Sie die vorhandenen Einträge löschen, dies ist relevant, wenn zum Beispiel die Daten gelesen werden. aus der Datenbank und kann sich geändert haben seit dem letzten Ladevorgang ? Dies ist ein Feature-Elemente ().

Nach ComboBox’a die Daten möchten wir das ausgeführte Programm erschienen. Wenn die Liste geändert wurde, müssen Sie die Funktion (Refresh) aktualisieren, sonst wird nicht die Änderungen angezeigt.

comboPerson.Items.Clear(); //Leere comboPerson
 
while (readPersons.Read())
{
comboPerson.Items.Add(readPersons.GetString(1));
}
 

comboPerson.Items.Refresh();//Refresh das Licht im Fenster

Die obige Schleife verwendet Leser Informationen aus der Datenbank mit dem Namen „ReadPersons“, die in jeder Iteration der Schleife eine Zeichenfolge mit der aktuellen Nr. 1-Spalte der Tabelle zurückgibt. Alle Werte in den Spalten der ausgewählten Tabelle überreichte ein Stück Code zur Ergänzung der ComboBox’a.

Hinzufügen von Datensätzen mit zwei Spalten

Und was passiert, wenn zusätzlich zu Werten, wir auch Indizes (oder Primärschlüssel) Tabelle ausgewählt? Dann sollten sie diese Informationen abgeschlossen und zeigt nur die Elemente, die Sie sehen sollten.

Für die Zwecke können Sie eine Klasse Wörterbuch verwenden, ist es eine Auflistungsklasse, die Sie zusammen mit den Schlüsseln der Liste Elemente hinzufügen kann. Es ist im System.Collections.Generic-Namespace.

In der Erklärung müssen Sie den Typ der Eingabe, z.B. angeben. Wörterbuch<int, string=““>, d. h., die das erste Element in jeder Zeile des Typs Int, und der zweite Typ String werden.</int,> Beide Elemente werden als zwei Spalten „Key“ und „Value“ gespeichert und somit können verwiesen werden.
Der Unterschied im Code ist, dass die Schleife nicht mit ComboBox’a-Rekorde, sondern nur eine Sammlung von Wörterbuch füllen und schließlich wir es auf die ItemsSource ComboBox’a führen. Funktion klar () führt in diesem Fall Fehler, so dass Sie die Werte aus der ItemsSource von Przyrównanie auf null löschen müssen.

Der folgende Code zeigt die Entwicklung des vorherigen Beispiels.

comboPerson.ItemsSource = null;
this.comboPerson.Items.Clear();//Verwenden Sie nicht, wenn es eingehakt ist Itemssource, es sei denn null'em
 
System.Collections.Generic.Dictionary<int, string> comboSource = new System.Collections.Generic.Dictionary<int, string>();
 
while (readPersons.Read())
{
comboSource.Add(readPersons.GetInt32(2), readPersons.GetString(1));
}
 
comboPerson.ItemsSource = comboSource;//Die Zuordnung der Sammlung zu ComboBox'a
comboPerson.DisplayMemberPath = "Value";//Die Auswahl der anzuzeigenden Spalten
 
this.comboPerson.Items.Refresh();

Eine Auswahl von Spalten in der Liste angezeigt werden sollen, erfolgt mit dem Befehl ComboPerson. DisplayMemberPath = „Wert“; Da ComboBox’a der Warteschlange zugewiesen wurde sind nur hier ein Wörterbuch zwei Spalten mit Namen zuvor „Key“ und „Wert“ vorgestellt.

Lesen Sie die ausgewählten Werte in ComboBox’ie

Wenn die Lichter wurden ergänzt durch die Daten, ist den Wert, der vom Benutzer gewählten schreibgeschützt. Beispiele werden in String sie zB angezeigt umgewandelt werden. in MessageBox’ie.

Lesen Sie die komplette Palette:

comboPerson.SelectedValue.ToString();

ComboBox-c#-wpf
[2, Jan]
Zeigt die Anzahl der Klammern, die den Index und den Wert der Zeichenfolge darstellt.

Um den Wert der Spalte Schlüssel oder Wert anzuzeigen, müssen Sie das ausgewählte Element ComboBox’a (SelectedItem) umwandeln, für ein KeyValuePair enthalten im System.Collections.Generic-Namespace, in der Sie die Felder zugreifen kann:

Key

((System.Collections.Generic.KeyValuePair<int, string>)comboPerson.SelectedItem).Key.ToString();

Wert

((System.Collections.Generic.KeyValuePair<int, string>)comboPerson.SelectedItem).Value.ToString();
Loading Facebook Comments ...

Schreibe einen Kommentar

Or