如果我在Visual Studio 2010 SP1中创建一个新项目,并选择“WPF应用程序”,并尝试构建生成的应用程序,我会得到错误

名称“InitializeComponent”在当前上下文中不存在。

今天早上,当我试图构建当前项目时,我遇到了类似的错误。昨天,我编译和运行它没有问题。

我创建了一个新项目,每当我编译项目时,都会得到错误。我刚刚把项目发给了同事,他刚刚编译完成,没有任何错误。

怎么了?


当前回答

右键单击项目中的文件夹以创建新的UserControl,这是我的问题。 我在文件夹外创建了相同的控件,就是这样。

其他回答

右键单击项目中的文件夹以创建新的UserControl,这是我的问题。 我在文件夹外创建了相同的控件,就是这样。

我遇到过这种情况(尽管这在很大程度上是我的错,是在我复制并粘贴了一些代码之后造成的);当命名空间在XAML和后面的代码之间不匹配时,就会发生这种情况

EG

<UserControl x:Class="DockPanel.TreeView" />

后面的代码是

namespace NotDockPanel

检查设计器文件。

我也有同样的问题。在我的例子中,原因是FileName.Designer.cs的名称空间与FileName.cs中使用的(正确的)名称空间不匹配。

更改FileName.Designer.cs的命名空间以匹配FileName.cs立即解决了这个问题。

对于那些在调试模式下没有错误,但在发布模式下有指定的错误(但项目运行正常)的人来说,这里有一些简单的尝试:

打开与出现问题的XAML .cs文件对应的XAML文件。 进行编辑——任何编辑,比如在某处添加空格 保存文件并关闭

这种方法在VS 2015中对我有效,根据其他用户的说法,在2017年和2019年也是如此

我同意上面的答案,即名称空间必须匹配。但是,我遇到了这样一个问题,即名称空间匹配。

为了解决这个问题,我简单地将XAML中的名称空间更改为不正确的名称空间,保存,然后将其更改为正确的名称空间。瞧!