Ответ 1
Проблема решена. Причина. Я забыл также изменить имя пользовательского приложения в коде xaml. Решение: я изменил имя приложения в XAML, теперь он работает хорошо.
Я начинаю изучение XAML, и я добавляю код в мое приложение BlankPage. И вдруг конструктор, инициализирующий компонент:
public BlankPage()
{
this.InitializeComponent();
}
Прекратите работать. У меня есть эта ошибка:
'BlankApplication.BlankPage' не содержит определения для 'InitializeComponent', и не может быть найден метод расширения 'InitializeComponent', принимающий первый аргумент типа 'BlankApplication.BlankPage' (вам не хватает директивы using или ссылки на сборку? )
Честно говоря, я ничего не делал, я даже не смотрел эту часть кода, и теперь это не работает.
Снимок экрана:
Проблема решена. Причина. Я забыл также изменить имя пользовательского приложения в коде xaml. Решение: я изменил имя приложения в XAML, теперь он работает хорошо.
Просто, чтобы дать немного больше информации о том, как исправить это (поскольку это объяснение немного на неопределенной стороне).
Эта проблема (для меня) была вызвана тем, что я изменил пространство имен в коде после создания проекта. Чтобы исправить эту проблему, мне пришлось внести некоторые изменения в несколько мест:
1: В App.xaml мне пришлось изменить следующее:
<Application
x:Class="New.Namespace.App"
2: В MainPage.xaml мне пришлось изменить следующее:
<Page
x:Class="New.Namespace.MainPage"
Вы также захотите, чтобы вы изменили строку "namespace" в своем App.xaml.cs, а также ваш MainPage.xaml.cs.
Наконец, вы также захотите, чтобы вы обновили точку входа проекта в Package.appxmanifest, чтобы указать на "New.Namespace.App".
Это происходит, когда вы меняете пространство имен для класса, вы должны делать то же самое внутри файла XAML.
В файле XAML есть два места со старым пространством имен.
Если пространство имен вашего основного класса отличается от атрибута .xaml file 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();
}
}
}
Ваш 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>
Вы увидите ошибку, пока не измените x: class на;
х: Класс = "UWPControls.MainPage"
Для меня проект был внутри решения с другими проектами. Когда предлагаемые здесь предложения не сработали, простая выгрузка и перезагрузка проекта из решения сделали свое дело и исправили все ошибки (с перестройкой, конечно).
Мое решение: для моей "SomePage: ContentPage" я изменил свойства XAML:
MSBuild:Compile
до MSBuild:UpdateDesignTimeXaml
Page
до Embedded resource
Использование Visual Studio 2017 Enterprise 15.3.4