BlankPage构造函数无法初始化组件

我开始学习XAML,并在BlankPage应用程序中添加了一些代码。 突然间,一个构造函数正在初始化一个组件:

public BlankPage() { this.InitializeComponent(); } 

停止工作。 我现在有这个错误:

‘BlankApplication.BlankPage’不包含’InitializeComponent’的定义,并且没有扩展方法’InitializeComponent’接受类型为’BlankApplication.BlankPage’的第一个参数’(您是否缺少using指令或程序集引用?)

老实说,我没有做任何事情,我甚至没有看到这部分代码,现在它不起作用。

截图:

只是提供一些关于如何解决这个问题的更多信息(因为这个解释有点模糊不清)..

这个问题(对我来说)是因为我在创建项目后更改了代码中的命名空间。 为了解决这个问题,我不得不在几个地方做一些改变:

1:在App.xaml中,我必须更改以下内容:

  

2:在MainPage.xaml中,我不得不更改以下内容:

  

您还需要确保更改App.xaml.cs中的“命名空间”行以及MainPage.xaml.cs。

最后,您还需要确保更新Package.appxmanifest中的Project Entrypoint以指向“New.Namespace.App”。

更改类的命名空间时会发生这种情况,您必须在XAML文件中执行相同的操作。

XAML文件中有两个位置与旧命名空间。

如果Main类的命名空间与.xaml文件的x:Class属性不同,则会出现此错误。 例如;

你的MainPage.xaml.cs;

  namespace UWPControls { ///  /// An empty page that can be used on its own or navigated to within a Frame. ///  public sealed partial class MainPage : Page { public MainPage() { this.InitializeComponent(); } } } 

你的MainPage.xaml;

   

在将x:class更改为;之前,您将看到错误。

X:类= “UWPControls.MainPage”

我的解决方案:对于我的“SomePage:ContentPage”,我更改了XAML属性:

  • 生成器(自定义工具):从MSBuild:CompileMSBuild:UpdateDesignTimeXaml
  • BuildAction:从PageEmbedded resource

使用Visual Studio 2017 Enterprise 15.3.4

问题解决了。 原因:我忘了也在xaml代码中更改自定义应用程序名称。 解决方案:我在XAML中更改了应用程序名称,现在它运行良好。