Okay, so ich ein flippiges man hier haben ... Ich muss aus dem Inneren eines Kindes Itemsdatenvorlage zu einem übergeordneten Itemseigenschaften zu binden in der Lage sein:WPF Bindung an Eltern Items aus dem Inneren Kind Itemsdatenvorlage
<ItemsControl ItemsSource="{Binding Path=MyParentCollection, UpdateSourceTrigger=PropertyChanged}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<ItemsControl ItemsSource="{Binding Path=MySubCollection}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Path=MyParentCollection.Value, UpdateSourceTrigger=PropertyChanged}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
lassen Sie uns diesen MyParentCollection nehmen (die äußere Sammlung) ist der folgenden Art:
public class MyObject
{
public String Value { get; set; }
public List<MyChildObject> MySubCollection { get; set;
}
Und lassen Sie uns, dass MyChildObject gehe davon aus, die oben Klasse des folgenden Typs ist:
public class MyChildObject
{
public String Name { get; set; }
}
Wie kann ich aus der inneren Datenvorlage an MyParentCollection.Value binden? Ich kann einen FindAncestor nicht wirklich nach Typ verwenden, da beide Ebenen die gleichen Typen verwenden. Ich dachte, vielleicht könnte ich der äußeren Sammlung einen Namen geben und ein ElementName-Tag in der inneren Bindung verwenden, aber die Eigenschaft konnte immer noch nicht aufgelöst werden.
Irgendwelche Gedanken? Ich bin auf diese stecken ...
Können Sie den FindAncestor-Modus nicht verwenden und sowohl einen Type- als auch einen Ahnen-Level angeben? –
hmmm, habe nicht einmal an Ahnenebene gedacht ... Ich werde mir das mal ansehen –
Ich kann es nicht so hinkriegen, dass es funktioniert, naja –