ПРИЗМА - Xamarin Forms - Отключить IsGestureEnable на странице с некоторыми подробностями MasterDetailPage - PullRequest
1 голос
/ 17 марта 2020

Я использую библиотеку Prism (версия 7.2.0.1422) в своем приложении Xamarin Forms. После входа в систему я использую метод NavigationService.NavigateTo($"/{nameof(MainMasterDetailPage)}/{nameof(MasterDetailNavigationPage)}/{nameof(HomePage)}"), чтобы установить мой «MainMasterDetailPage» в качестве главной страницы приложения.

MasterDetailNavigationPage class:

public class MasterDetailNavigationPage : NavigationPage, INavigationPageOptions
{
    public bool ClearNavigationStackOnNavigation => false;
}

Когда пользователь нажмите на пункт меню, я использую NavigationService.NavigateTo("pagename") метод, чтобы сохранить стек навигации. В этом случае присутствует кнопка «Назад», и с помощью жеста смахивания отображается меню.

В некоторых случаях я хочу, чтобы жест смахивания, чтобы открыть меню, был отключен, поскольку на некоторых страницах имеется средство распознавания жестов для управления жест смахивания в моем пользовательском представлении (чтобы снова нарисовать и т. д. c).

Как я могу это сделать с помощью библиотеки Prism? Я не могу получить доступ напрямую к свойству «Включен ли жест», представленному на странице сведений о мастере.

1 Ответ

1 голос
/ 18 марта 2020

Попробуйте, будучи SomePage страницей, на которой вы хотите показывать подобное поведение.

class SomePage : ContentPage {

   public SomePage() {
      // Assuming your MasterDetailPage is the root page of the Application
      Xamarin.Forms.Application.MainPage.IsGestureEnabled = false;
   }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...