Ein gebundenes Kombinationsfeld wird gelöscht und neu gefüllt

8

Ich habe eine WPF-Anwendung mit einer Anzahl von Comboboxen, die miteinander verbunden sind. Wenn ich Comboboxx # 1, Combobox # 2 schaltet usw ..

Hier ist das Xaml für die 2 Comboboxen:

%Vor%

CboDivision wird am Anfang gefüllt und benötigt kein Reset. HEre ist der Code, der die Änderung in der Division aufruft, die eine Änderung des Kunden auslösen sollte:

%Vor%

Wenn ich einen Indexwechsel mache, ruft er einen Hintergrundarbeiter auf, der den folgenden Code aufruft:

%Vor%

Das Problem ist, dass ich die Auswahlen auf CboDivision nicht wechseln kann und CboCustomerList löschen und neue Werte in es laden kann. Ist es die Art, wie ich die Werte im XAML binde? Wie kann ich eine Änderung in CboDivision verursachen ein Löschen von CboCustomerList-Elemente, dann die Ausführung der Füllroutine?

Ich setze gerade die Combobox mit:

zurück %Vor%

, aber das fügt nur die neue cbocustomerlist-Abfrage an das Ende an Ich habe es auch versucht

%Vor%

, aber das gibt nur einen Null-Referenzfehler zurück, nachdem die Box aufgefüllt ist und der Benutzer ein Element auswählt.

    
rigamonk 08.05.2015, 21:04
quelle

3 Antworten

4

Nun, Sie haben nicht Ihren gesamten Code gepostet, aber ein Problem besteht darin, dass Sie Ihren Arbeitsthread nicht aufrufen.

Ersetzen Sie FillCustomers(null, null) durch customerWorker.RunWorkerAsync() .

%Vor%

Lass es mich wissen, wenn das hilft. Wenn es noch mehr Probleme gibt, poste bitte den Rest deines Codes.

    
Matt Jacobi 12.05.2015, 02:54
quelle
3

Es gibt Details zu Code, den Sie nicht angezeigt haben. Hier ist jedoch ein Beispiel, das funktioniert: zwei Combos, was am Anfang gefüllt ist, und eine zweite, die jedes Mal gefüllt wird, wenn sich die Auswahl im ersten ändert. Beachten Sie, dass die Daten in einem Hintergrund-Worker wie in Ihrem Fall abgerufen werden.

XAML

%Vor%

C #

%Vor%     
Marius Bancila 11.05.2015 12:18
quelle
2

Ersetzen Sie den falschen Code FillCustomers(null, null);  mit: customerWorker.RunWorkerAsync();

    
Ali pishkari 17.05.2015 09:34
quelle

Tags und Links