Daten aus einem verschachtelten ObservableCollection auslesen

  • WPF MVVM

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von Elster.

    Daten aus einem verschachtelten ObservableCollection auslesen

    Schönen guten Abend,
    ich taste mich im Moment durch das MVVM-Pattern durch.
    Da habe eine Frage zum Darstellen von Daten aus einem ObservableCollection, dass ein ObservableCollection beinhaltet.

    Mein Vorhaben sieht so aus, dass mein Übergreifendes ObservableCollection als Datentyp den Bauplan einer Klasse hat und die Klasse ein ObservableCollection vom Konstruktor benötigt.
    Ab diesen Punkt möchte ich aus dem hinzugefügten ObservableCollection Daten in meiner XAML anzeigen lassen.

    Das ganze sieht so aus:

    'Rank1 OBC
    Public Property Options () As New ObservableCollection(Of MyOptions)

    'Rank2 OBC
    Public Property Clients () As new ObservableCollection(Of Client)

    Public Sub New ()
    Clients.Add(New Client("nameClient","textDesciption"))
    Options.Add(New MyOptions("nOption",Clients))
    End Sub

    Zum Darstellen der Daten, habe ich eine Listbox erstellt.
    Mit der Property "SelectedItem" über die Property "ElementName" möchte ich die Daten der ausgewählten Datenreihe in einem Label nun anzeigen.

    <ListBox Grid.Row="0" Width="150" HorizontalAlignment="Right"
    Name="ListBoxMain"
    ItemsSource="{Binding Clients, Source={StaticResource MyClients}}"
    ItemTemplate="{StaticResource ClientsDarstellung}"
    IsSynchronizedWithCurrentItem="True"/>

    <Label FontSize="12" Height="Auto" Width="Auto" Foreground="Black"
    Content="{Binding SelectedItem.Clients/NameOfClient, ElementName=ListBoxMain}"/>

    Leider werden in dem Label keine Daten angezeigt?
    Ist mein Bindung falsch?

    Die Bindung mache ich im Moment noch über das Eigenschaftsfenster. Die Schritte dementsprechend aus:
    Content -> Bindung -> Datenbindung erstellen -> Bindungstyp -> ElementName (ListBoxMain) -> Pfad (SelectedItems : MyOptions) -> Clients -> nameClient : (String)
    Ich habe mir das Tutorial in der Tat durchgelesen.
    Grundlagen - MVVM-Anwendungs-Struktur und Grundlagen - MVVM: "Binding-Picking" im Xaml-Editor
    Es war auch sehr hilfreich für die Lücken in meinem Verständnis fürs MVVM-Pattern gefüllt.
    Jedoch hätte ich mein komplettes Vorhaben umändern müssen. Was ich wollte war, ein OBC aus einem OBC zu lesen zu können. Und das Problem war einfach, dass ich keine Property erstellt habe, die etwas returned.