属性 "Class" 在命名空间中不存在

The property "Class" does not exist in the namespace

我对 WPF 还很陌生,遇到烦人的错误消息时很难受。这是我的步骤:

  1. 在 Visual Studio 2015 中创建一个新的 WPF 应用程序。这是为 MainWindow 生成的默认 xaml(这很好用):

    <Window x:Class="Skype_Utility.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:Skype_Utility"
        Title="MainWindow" Height="300" Width="300">
    
        <Grid>
        </Grid>
    </Window>
    
  2. 注意前两行:

    <Window x:Class="Skype_Utility.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    
  3. 接下来,我从 here 中抓取了一些 xaml,因为我想在项目中添加一个自动完成的文本框:

    <Window x:Class="Skype_Utility.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml "
            xmlns:ac="clr-namespace:WpfAutoComplete.Controls;assembly=WpfAutoComplete" 
            Title="Autocomplete Text Box Project"  
            Height="300" Width="300"> 
    
        <Grid> 
    
            <StackPanel> 
    
                <Label Content="This is an Autocomplete Textbox" /> 
    
                <ac:TextBoxAutoComplete Name="autoTxtBoxEng" 
                    SearchDataProvider="{Binding Path=MySearchProviderEng}"  
                    SelectedListBoxValue="{Binding Path=PhraseNumber, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
                    WatermarkText="Type in filtering text here..."/>  
    
            </StackPanel>
    
        </Grid>
    
    </Window>
    

但是,当我将他们的 xaml 放入我的项目时,我收到此错误消息:

The property "Class" does not exist in the "http://schemas.microsoft.com/winfx/2006/xaml " namespace.

尽管这些是默认代码中存在的完全相同的行,并且当时没有给出错误...

Visual studio 怎么能抱怨这一行,即使它实际上与自动生成的前几行完全相同?我不知道如何在这方面取得进展,非常感谢任何建议!

我对此唯一的想法是,在导致此问题的警告之后一定有一些行,但在那种情况下,这是一个非常无用的错误消息!


由于存在错误,我无法构建或运行我的项目:

The name "TextBoxAutoComplete" does not exist in the namespace "clr-namespace:WpfAutoComplete.Controls;assembly=WpfAutoComplete".


The property "Class" does not exist in the "http://schemas.microsoft.com/winfx/2006/xaml " namespace.


The property 'Class' does not exist in XML namespace 'http://schemas.microsoft.com/winfx/2006/xaml '.

xmlns:x 末尾有一个 space 字符太多:

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml " <--- 删除 xaml

之后的最后一个字符

所以它变成了:

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"