r9s*_*r9s 12 c# xaml microsoft-metro windows-8
我开始学习XAML,并在BlankPage应用程序中添加了一些代码.突然间,一个构造函数正在初始化一个组件:
public BlankPage()
{
this.InitializeComponent();
}
Run Code Online (Sandbox Code Playgroud)
停止工作.我现在有这个错误:
"BlankApplication.BlankPage"不包含关于"的InitializeComponent"的定义和没有扩展方法"的InitializeComponent"接受类型"BlankApplication.BlankPage"的第一个参数可以找到(是否缺少using指令或程序集引用?)
老实说,我没有做任何事,我甚至没有看到这部分代码,现在它不起作用.
截图:
Bri*_*ggs 14
只是提供一些关于如何解决这个问题的更多信息(因为这个解释有点模糊不清)..
这个问题(对我而言)是因为我在创建项目后更改了代码中的命名空间.为了解决这个问题,我不得不在几个地方做一些改变:
1:在App.xaml中,我必须更改以下内容:
<Application
x:Class="New.Namespace.App"
Run Code Online (Sandbox Code Playgroud)
2:在MainPage.xaml中,我不得不更改以下内容:
<Page
x:Class="New.Namespace.MainPage"
Run Code Online (Sandbox Code Playgroud)
您还需要确保更改App.xaml.cs中的"命名空间"行以及MainPage.xaml.cs.
最后,您还需要确保更新Package.appxmanifest中的Project Entrypoint以指向"New.Namespace.App".
如果您的 Main 类的命名空间与 .xaml 文件的x:Class属性不同,您将收到此错误。例如;
您的 MainPage.xaml.cs;
namespace UWPControls
{
/// <summary>
/// An empty page that can be used on its own or navigated to within a Frame.
/// </summary>
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
}
}
}
Run Code Online (Sandbox Code Playgroud)
您的 MainPage.xaml;
<Page
x:Class="UWPControls_Different.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:UWPHelloWorld"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">
</page>
Run Code Online (Sandbox Code Playgroud)
在将x:class更改为;之前,您将会看到该错误
x:Class="UWPControls.MainPage"