2 Stimmen

Auf WPF-Steuerung programmgesteuert zugreifen

Das Problem dabei ist wahrscheinlich offensichtlich, aber ich habe Schwierigkeiten, es zu sehen.

Ich habe das folgende XAML:

Ich habe die itemsSource für contentList wie folgt eingerichtet:

contentList.ItemsSource = myObservableCollection;

Wenn ich jedoch dasselbe für imageContent versuche, scheine ich nicht über IntelliSense darauf zugreifen zu können. Ich habe ein Clean/Rebuild des Projekts versucht, aber es hat keinen Unterschied gemacht.

Muss ich auf imageContent auf eine andere Weise zugreifen?

Ich möchte myObservableCollection sowohl für contentList als auch für imageContent verwenden, da es folgende Struktur hat:

  • Name (String)
  • ImageCollection (ObservableCollection)

Mit dem Ziel, die folgende Benutzeroberfläche zu erstellen:

Bildbeschreibung hier eingeben

2voto

Kevin DiTraglia Punkte 24902

Sie müssen eine weitere ObservableCollection innerhalb der Listenobjekte Ihrer äußeren Sammlung definieren. Etwas wie das:

ObservableCollection OuterList = new ObservableCollection();

//...

public class MyObject
{
    public ObservableCollection ImageCollection {get; set;}
    public MyObject()
    {
        ImageCollection = new ObservableCollection();
    }
}

Aktualisieren Sie dann einfach Ihr XAML wie folgt:

...

...

Dadurch wird bewirkt, dass jedes Element in Ihrer äußeren Liste seine eigene beobachtbare Sammlung enthält, die seine Liste enthält.

Bei dieser Änderung stellen Sie außerdem sicher, dass Sie das Binding auf Ihrem Textblock aktualisieren, da jedes Element ein FileInfo-Objekt darstellt, können Sie einfach Folgendes schreiben:

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X