当我将 aDataTemplate放入一个<Page.Resources>部分时,它会继承设计器DataContext内Page编辑绑定时的 。然而,在运行时,DataTemplate内部的一个元素正在使用Page它,它有自己的DataContext. 我希望设计师DataContext在装订时展示内部。
有没有类似d:DataContextfor的标签DataTemplates?设置DataType没有任何作用。
当我将 aDataTemplate放入一个<Page.Resources>部分时,它会继承设计器DataContext内Page编辑绑定时的 。然而,在运行时,DataTemplate内部的一个元素正在使用Page它,它有自己的DataContext. 我希望设计师DataContext在装订时展示内部。
有没有类似d:DataContextfor的标签DataTemplates?设置DataType没有任何作用。
我发现你可以d:DataContext在DataTemplate.
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
<ListBox ItemsSource="{Binding People}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel d:DataContext="{d:DesignInstance Type=local:Person}">
<TextBlock Text="{Binding Name}" />
<TextBlock Text="{Binding Age}" />
<TextBlock Text="{Binding Height}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
我意识到这是超级旧的,但为了让 SO 变得更好。DataTemplates 通过 DataType 标签有一个“DataContext”。
<DataTemplate DataType="{x:Type local:Person}">
<StackPanel>
<TextBlock Text="{Binding Name}" />
<TextBlock Text="{Binding Age}" />
<TextBlock Text="{Binding Height}" />
</StackPanel>
</DataTemplate>