为什么DataTemplate行会破坏Visual Studio 2008中的WPF设计器?
程序编译并正常运行。 DataTemplate应用它。但是整个DataTemplate代码块用红色加下划线,当我简单地“构建”程序而不运行时,我得到错误“类型引用无法找到名为'Character'的公共类型”
为什么在设计师中找不到它,程序是否正确应用模板?
<UserControl x:Class="WPF_Tests.Tests.TwoCollecViews.TwoViews"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:DetailsPane="clr-namespace:WPF_Tests.Tests.DetailsPane"
>
<UserControl.Resources>
<DataTemplate DataType="{x:Type DetailsPane:Character}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Path=Name}"></TextBlock>
</StackPanel>
</DataTemplate>
</UserControl.Resources>
<Grid>
<ListBox ItemsSource="{Binding Path=Characters}" />
</Grid>
</UserControl>
编辑:我被告知这可能是Visual Studio 2008中的一个错误,因为它在2010年正常运行。您可以在此处下载代码:http://www.mediafire.com/?z1myytvwm4n - Test / TwoCollec xaml文件的设计者将打破这段代码。
答案 0 :(得分:2)
是的,这是Visual Studio 2008中的一个错误。您可以通过更改程序集名称(右键单击Project“WPF Tests”/ Properties)从“WPF Tests”更改为“WPF_Tests”来解决此问题。我尝试了你的项目,它似乎工作(重启Visual Studio后)。
(此解决方法的信用额转到:http://social.msdn.microsoft.com/forums/en-US/wpf/thread/21d72064-354c-432e-8227-ba4e21f4089f)