Ich habe ein Viewmodel mit einem observablecollection Mitglied.Datenkontext von usercontrol ist null
Ich habe eine Benutzersteuerung erstellt, die mit dieser Sammlung und für alle Element in der Sammlung bin ich am Ende in der Benutzersteuerelemente Konstruktor. In diesem Konstruktor ist der Datenkontext Null, warum ist das?
<ItemsControl ItemsSource="{Binding ListOfMyCustomType}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<uc:Tile DataContext="{Binding Path=.}"></uc:Tile>
</DataTemplate>
</ItemsControl.ItemTemplate>
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
Edit:
Es gibt keine Binding Fehler in der Debug-Ausgabe.
Edit:
von Matthias Gelöst ist die Datacontext nicht verfügbar diesmal. Es wird verfügbar sein, wenn das Steuerelement geladen wird oder wenn sich der Datenkontext ändert. Daumen hoch!
Grüße,
Michel
Ich glaube, ich selbst _binding Pfad löschen ._ = da die Steuerung die Standarddatacontext, dh der Strom verwenden Artikel in der Sammlung. –
Ihr Xaml sieht gut aus. Ich könnte abbilden, dass der DataContext nicht gesetzt ist, wenn der Konstruktor ausgeführt wird. Versuchen Sie, an das UserControl.Loaded-Ereignis anzuhängen, und verwenden Sie den DataContext dort. – MatthiasG
Noch besser: Verwenden Sie das DataContextChanged-Ereignis. – MatthiasG