Berücksichtigen Sie, dass ich eine Schlüsselwertpaarkollektion (Ex-Schlüssel = MSFT-Wert = MSFT Microsoft) habe, die ich an die ComboBox anbinde. DisplayMeeperPath = Wert. Das Folgende muss durchgeführt werden
Bei der Auswahl eines Elements muss nur der Schlüssel in Combo angezeigt werden,
Der Benutzer könnte auch einen brandneuen Wert in der Combo eingeben.
Ich kann keine Lösung finden, die diese beiden Funktionen unterstützt. Solving One bricht das andere.
%Vor%Erweiterung des Adams-Beispiels um eine noch allgemeinere Lösung.
Erstellen Sie in der Datei "xaml.cs" eine beobachtbare Auflistungseigenschaft, und weisen Sie ihr eine Auflistung zu.
%Vor%In der XAML-Datei binden Sie Ihre beobachtbare Sammlung in die Eigenschaft ein, die Sie im hinterlegten Code erstellt haben.
%Vor% Sie können DisplayMemberPath="Key"
in DisplayMemberPath="Value"
ändern, wenn Sie stattdessen den Wert anzeigen möchten.
Ich glaube nicht, dass eine gerade aus der Box Combobox ist das richtige UI-Element für Sie in dieser Situation zu verwenden. Das Problem hierbei ist, dass die Combobox keine Schlüssel / Wert-Paare unterstützt, insbesondere wenn Sie möchten, dass der Benutzer dem Wörterbuch Werte hinzufügen kann, während Sie an den Schlüssel gebunden sind. Wenn Sie beispielsweise zulassen, dass sie einen Wert hinzufügen, wie fügen sie den Schlüssel hinzu oder wählen Sie den zu aktualisierenden Schlüssel aus?
Ich denke, die Lösung besteht darin, zwei Steuerelemente zu haben: ein Kombinationsfeld für die Schlüsselauswahl und ein Textfeld für die Werteingabe. Das Textfeld Werte ist ausgeblendet, bis der Benutzer einen Schlüssel auswählt. Sobald die Taste ausgewählt ist, lassen Sie sie ihre Werteingabe in das Textfeld eingeben und drücken Sie die Eingabetaste oder eine Taste und stellen Sie den Wert auf die ausgewählte Taste ein.