[英]DataContext is null for TabItem DataTemplate
我有一個Tabcontrol
<TabControl TabStripPlacement="Left"
Grid.Row="1"
x:Name="TabControl"
ItemsSource="{Binding SomeProperty}"
ContentTemplateSelector="{StaticResource SomeDataSelector}">
<TabControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}"/>
</DataTemplate>
</TabControl.ItemTemplate>
</TabControl>
我在哪里打電話給DataTemplateSelector
<UserControl.Resources>
<DataTemplate x:Key="DefaultTemplate" >
<TextBlock Text="Default" FontSize="72"></TextBlock>
</DataTemplate>
<DataTemplate x:Key="FirstViewDataTemplate">
<local:FirstView HorizontalAlignment="Left"/>
</DataTemplate>
<DataTemplate x:Key="SecondViewDataTemplate">
<local:SecondView HorizontalAlignment="Left" DataContext="{Binding}"/>
</DataTemplate>
<local:SomeDataSelector x:Key="SomeDataSelector"
FirstViewDataTemplate="{StaticResource FirstViewDataTemplate}"
SecondViewDataTemplate="{StaticResource SecondViewDataTemplate}"/>
</UserControl.Resources>
但是SecondView的DataContext為null
我也嘗試了元素綁定,但沒有幫助
我想念什么?
我無法重現該問題。 我用您的示例代碼和缺少的選擇器創建了一個應用程序,它可以正常工作。 什么時候看到DataContext為null? 如果它在構造函數中,則可以預期是因為尚未發生綁定。
如果希望在數據上下文ID可用時收到通知,則可以處理DataContextChanged
事件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.