名称空间YYY(XAML VS12 Windows 8)中不存在名称XXX

时间:2012-08-30 02:38:28

标签: xaml

所以我在Windows 8上使用VS12,并且攻击ContosoCookbook代码以制作不同的应用程序。 我正在尝试设置一个“MainMenu.xaml”页面,我有:

        <CollectionViewSource
        x:Name="groupedItemsViewSource"
        Source="{Binding Groups}"
        IsSourceGrouped="true"
        ItemsPath="TopItems"
        d:Source="{Binding AllGroups, Source={d:DesignInstance Type=data:FlashCardDataSource, IsDesignTimeCreatable=True}}"/>

我得到的错误是: 名称“FlashCardDataSource”在命名空间“using:FlashCards.Data”中不存在。

...但我不明白它是怎么回事。我从哪里开始寻找?我是XAML的新手。

-Ken

8 个答案:

答案 0 :(得分:19)

如果没有别的办法,请注释使用命名空间的行,重建,然后再次构建完整的项目。

我也尝试重建项目,重新打开Visual Studio。什么都没有帮助。我终于评论了xaml,重建了项目,取消注释了xaml,终于工作了!奇怪的问题。

答案 1 :(得分:13)

如果清理和重建没有帮助,请尝试重新启动Visual Studio。为我工作。

答案 2 :(得分:5)

通常,此错误是由以下原因之一引起的:

  1. 您尚未引用该类所在的程序集。
  2. 添加类后,您尚未更新对程序集的引用 它。
  3. 您正在引用错误的程序集版本。
  4. 您正在引用.DLL文件而不是项目(如果项目是您的解决方案的一部分)
  5. 您引用的类中存在语法错误。

答案 3 :(得分:3)

检查每个类和xaml文件的名称空间(即使在 App.xaml MainWindow.xaml 中)。确保您不会将文件顶部元素中的x:Class与命名空间混淆。 有时它确实看起来像一个bug,但它只是一个名称空间,它独立于混合所有东西的其他东西。

答案 4 :(得分:2)

您是否尝试重建项目?也许清理项目并重新重建。

答案 5 :(得分:1)

如果确定该类存在于正确的命名空间中,则在VS中右键单击该项目,然后选择“卸载”。然后重新加载项目。这使得它可以重新评估所有命名空间,并且是解决我发现的问题的唯一方法(当它确实持续不承认您的类时)

答案 6 :(得分:0)

就我而言, 我清理所有属性值相对于我在所有类中的代码分配的绑定, 然后一切都变得正常了。

我认为如果赋予属性值,在类中的某个错误位置同时使用绑定会导致问题,因此删除相对于属性的所有赋值代码可能会有所帮助。

答案 7 :(得分:0)

以上都没有为我工作,但只是在包含它声称不存在的类的文件夹中添加另一个虚拟类似乎可以解决问题。也许这让VS再看一眼。