WPF-Datenbindung der combobox an eine Liste<string>
Ich bin eine schwierige Zeit versuchen zu binden, mein Eigentum, das ist der Typ Liste meiner combobox durch XAML.
public List<string> MyProperty { get; set; }
Den folgenden XAML-binding funktioniert nicht:
<ComboBox Name="cboDomainNames" ItemsSource="{Binding Path=MyProperty}"/>
Aber die folgende Zuordnung:
cboDomainNames.ItemsSource = MyProperty;
funktioniert perfekt. Was ich hier vermisst?
Ist der DataContext für deine ComboBox korrekt?
Ja das Grundstück ist in der Ansicht ( meine app ist ein MVP - PRISMA - WPF) und ich habe DataContext= this; Und mehr über die code-Zuordnung der ItemSource funktioniert! durch xaml nicht!
Ich glaube, ich nagelte ihn! mein DataContext gesetzt wurde! ABER es wurde nach dem InitializeComponent(), dachte, dass könnte das th-problem. Dann jus erkannte, bin Bindung durch xaml! die Eigenschaft wird aufgefüllt, wenn die Aussicht ist bereit, nachdem Sie geladen ist (ich.e auf _presenter.OnViewReady())! Seit seinem nicht beobachtbaren Sammlung Nichts Hinzugefügt wird, der combobox! die Angabe aus meinem code funktioniert, weil zu dieser Zeit die Daten vorhanden sind, in Eigentum!!
Bitte postet eine Antwort, die erklärt, was falsch war und wie Sie es fest und akzeptieren, dass über das Häkchen auf der linken Seite der Antwort.
habe ich geschrieben, die Antwort in den Kommentar! ich bin nicht sicher, wie Sie Sie, markieren Sie es als Antwort!
Ja das Grundstück ist in der Ansicht ( meine app ist ein MVP - PRISMA - WPF) und ich habe DataContext= this; Und mehr über die code-Zuordnung der ItemSource funktioniert! durch xaml nicht!
Ich glaube, ich nagelte ihn! mein DataContext gesetzt wurde! ABER es wurde nach dem InitializeComponent(), dachte, dass könnte das th-problem. Dann jus erkannte, bin Bindung durch xaml! die Eigenschaft wird aufgefüllt, wenn die Aussicht ist bereit, nachdem Sie geladen ist (ich.e auf _presenter.OnViewReady())! Seit seinem nicht beobachtbaren Sammlung Nichts Hinzugefügt wird, der combobox! die Angabe aus meinem code funktioniert, weil zu dieser Zeit die Daten vorhanden sind, in Eigentum!!
Bitte postet eine Antwort, die erklärt, was falsch war und wie Sie es fest und akzeptieren, dass über das Häkchen auf der linken Seite der Antwort.
habe ich geschrieben, die Antwort in den Kommentar! ich bin nicht sicher, wie Sie Sie, markieren Sie es als Antwort!
InformationsquelleAutor ioWint | 2011-07-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Posting meinen Kommentar zurück, markieren die Antwort.
Mein DataContext gesetzt wurde, ABER es wurde nach dem InitializeComponent(). Ich dachte, das könnte das problem sein. Dann erkannte ich, als ich die Bindung durch xaml, wenn die Ansicht geladen wird, wird die Bindung geschieht an der Immobilie, die leer ist.
Die Eigenschaft wird aufgefüllt, wenn die Aussicht ist bereit, nachdem Sie geladen ist (ich.e auf _presenter.OnViewReady()). Da ist es nicht eine beobachtbare Sammlung nichts Hinzugefügt wird, der combobox. Die Angabe aus meinem code funktioniert, weil zu dieser Zeit die Daten in der Eigenschaft.
InformationsquelleAutor ioWint
Angenommen, Sie haben einen
List<Foo>
genanntFoos
in Ihrem Fenster /Seite.Foo
hat eine EigenschaftName
. Nun haben Sie die Bindung in XAML wie folgt:Diese basiert auf diese Frage ALSO. Lesen Sie diese (WPF DataBinding-übersicht) als eine gute Grundlage für das databinding in WPF.
Nicht eine Lösung, die Bindung an eine Liste<string>
InformationsquelleAutor Bernoulli IT
Wenn Sie nicht angeben, nichts als nur der Weg, die Bindung übernimmt als eine Quelle der container DataContext. Durch die Art und Weise, die nützliche Eigenschaft ist definiert auf dem container (z.B. die Fenster).
Können Sie lösen es wie folgt (in xaml):
InformationsquelleAutor Mario Vernari