簡體   English   中英

我如何獲得 function 或創建一個調用主詳細信息頁面或菜單的按鈕,因為 Xamarin.Forms 中的按鈕?

[英]How i can get the function or create a button that call the master detail page or menu since a button in Xamarin.Forms?

我制作了一個自定義導航欄,我想調用菜單,但由於我自己的菜單按鈕按鈕位於視圖主頁中

<MasterDetailPage xmlns="http://xamarin.com/schemas/2014/forms"
                  xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
                   xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
                  xmlns:views="clr-namespace:Emprender.Views"
                  x:Class="Emprender.Views.MainPage"
                  MasterBehavior="Popover">
    <MasterDetailPage.Master>
        <views:MenuPage/>
    </MasterDetailPage.Master>

    <MasterDetailPage.Detail>
        <NavigationPage>
            <NavigationPage.Icon>
                <OnPlatform x:TypeArguments="FileImageSource">
                    <On Platform="iOS" Value="menu.png"/>
                    <On Platform="Android" Value="menu.png"/>
                </OnPlatform>
            </NavigationPage.Icon>
            <x:Arguments>
                <views:Home />
            </x:Arguments>
        </NavigationPage>
    </MasterDetailPage.Detail>

</MasterDetailPage>

你想達到像下面的GIF這樣的結果嗎?

在此處輸入圖像描述

您可以通過將MasterDetailPage.IsPresented設置為true來打開菜單頁面。

這是我在views:Home 我不知道你要調用哪個地方的菜單頁。 所以,我在兩個地方添加它。

  private void ToolbarItem_Clicked(object sender, EventArgs e)
        {
            MainPage.isMasterPres.IsPresented = true;
        }

        private void Button_Clicked(object sender, EventArgs e)
        {
            MainPage.isMasterPres.IsPresented = true;
        }

MainPage ,我為MasterDetailPage設置了一個公共 static 值所以,我們可以在主頁視圖中調用它。

  public static MasterDetailPage isMasterPres;
        public MainPage()
        {
            InitializeComponent();
            isMasterPres = this;
            MasterBehavior = MasterBehavior.Popover;

            MenuPages.Add((int)MenuItemType.Browse, (NavigationPage)Detail);
        }

您可以使用 messageCenter 來實現它,就像下面的線程一樣。

如何從另一個內容頁面按鈕單擊打開主詳細菜單?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM