Хобрук: Ваш путь к мастерству в программировании

Добавление страницы MasterDetails в формы Xamarin (пространство имен уже содержит определение для xx)

Я создал новый проект форм Xamarin с опцией PCL и добавил главную страницу с именем MainPage. После добавления я получаю сообщение о том, что MainPage уже существует. Я использую VS2017 и последнюю версию Xamarin.

Error   CS0101  The namespace '' already contains a definition for 'MainPage'   \obj\Debug\xxxxxxMainPage.xaml.g.cs

Любая помощь очень ценится. Спасибо.

Изменить:

https://forums.xamarin.com/discussion/89346/forms-master-detail-page-generation-is-broken

На это есть ответ.

24.03.2017

  • Странно, либо в VS2017 что-то не так, либо вы создали в своем проекте два объекта с именем MainPage 25.03.2017
  • Я не уверен, что нет класса с таким же именем. Он сгенерировал класс с .g.cs для xaml, который также получил объявление частичного класса. 27.03.2017

Ответы:


1

Есть некоторые ошибки при создании MasterDetailPage

Предположим, я создал проект с именем MyApp и MasterDetailPage с именем Page1.

1) Похоже, что добавленные страницы имеют неправильное пространство имен. Так что измените пространство имен на добавленных страницах

Visual Studio добавляет к новым страницам пространство имен MyApp.Page1

    Page1.xaml.cs - change the Namespace to be just MyApp
   Page1Detail.xaml.cs - Change the namespace to be just MyApp
   Page1Master.xaml.cs - Change the namespace to be just MyApp
   Page1MenuItem.cs - Change the namespace to "MyApp"

2) Я также заметил, что в Page1Master.xaml.cs он неправильно ссылается на MenuItems.

    It says Page1MenuItems = new ObservableCollection...
Change that to be just
MenuItems = new ObservableCollection...

Это работает 4 меня

Надеюсь, поможет

03.04.2017
  • Это мне на помощь. Спасибо :) 03.06.2017
  • Новые материалы

    Создание кнопочного меню с использованием HTML, CSS и JavaScript
    Вы будете создавать кнопочное меню, которое имеет состояние наведения, а также позволяет вам выбирать кнопку при нажатии на нее. Финальный проект можно увидеть в этом Codepen . Шаг 1..

    Внедрите OAuth в свои веб-приложения для повышения безопасности
    OAuth — это широко распространенный стандарт авторизации, который позволяет приложениям получать доступ к ресурсам от имени пользователя, не раскрывая его пароль. Это позволяет пользователям..

    Классы в JavaScript
    class является образцом java Script Object. Конструкция «class» позволяет определять классы на основе прототипов с чистым, красивым синтаксисом. // define class Human class Human {..

    Как свинг-трейдеры могут использовать ИИ для больших выигрышей
    По мере того как все больше и больше профессиональных трейдеров и активных розничных трейдеров узнают о возможностях, которые предоставляет искусственный интеллект и машинное обучение для улучшения..

    Как построить любой стол
    Я разработчик программного обеспечения. Я люблю делать вещи и всегда любил. Для меня программирование всегда было способом создавать вещи, используя только компьютер и мое воображение...

    Обзор: Машинное обучение: классификация
    Только что закончил третий курс курса 4 часть специализации по машинному обучению . Как и второй курс, он был посвящен низкоуровневой работе алгоритмов машинного обучения. Что касается..

    Разработка расширений Qlik Sense с qExt
    Использование современных инструментов веб-разработки для разработки крутых расширений Вы когда-нибудь хотели кнопку для установки переменной в приложении Qlik Sense? Когда-нибудь просили..