Используйте шаблон элемента управления со страницей вкладок форм Xamarin - PullRequest
0 голосов
/ 17 сентября 2018

Эта ссылка описывает, как настроить шаблон элемента управления.Шаблон элемента управления можно использовать внутри объявления ContentPage страницы содержимого, например:

ControlTemplate="{StaticResource MainPageTemplate}"

Но этого нельзя сделать в TabbedPage.Отображается следующее:

Свойство 'ControlTemplate' не найдено в типе 'TabbedPage'.

Я хочу использовать ControlTemplate для создания настраиваемой панели навигации в видеобъяснено в этом учебном пособии .

Ниже описан обходной путь, о котором я думал и пытался до сих пор.

С учетом этого стека навигации:

--- App.xaml - MainTabbedPage.xaml - Page1.xaml / Page2.xaml

1) Я создал 'ControlTemplate'в App.Xaml, который определяет, как я хочу, чтобы моя панель навигации была похожа.

2) Удалил панель навигации по умолчанию с помощью строки ниже в MainTabbedPage.:

NavigationPage.SetHasNavigationBar(this, false);

3) и установите следующую строку в Page1.xaml и Page2.xaml:

ControlTemplate="{StaticResource MainPageTemplate}"

Это удаляет панель навигации по умолчанию и показывает настраиваемую панель навигации, как определено в ControlTemplate, однако меню с вкладками отображается в первой строке, тогда как настраиваемая панель навигации отображается во второй строке.Естественно, я хотел бы, чтобы все было наоборот.

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

...