【发布时间】:2020-12-31 13:44:42
【问题描述】:
我有一个 MasterDetailPage 并且我有侧边栏菜单?与 MasterPageItem。现在我正在尝试关闭呈现的 MasterPageItem。我该怎么做?
这是我的 MasterDetailPage:
<MasterDetailPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:MyApp;assembly=MyApp"
x:Class="MyApp.MainPage">
<MasterDetailPage.Master>
<local:MasterPage x:Name="masterPage" />
</MasterDetailPage.Master>
<MasterDetailPage.Detail>
<NavigationPage>
<x:Arguments>
<local:HomePage />
</x:Arguments>
</NavigationPage>
</MasterDetailPage.Detail>
</MasterDetailPage>
和 OnItemSelected 方法:
void OnItemSelected(object sender, SelectedItemChangedEventArgs e)
{
var item = e.SelectedItem as MasterPageItem;
if (item != null)
{
if(item.Title == "Logout")
{
SecureStorage.RemoveAll();
MessagingCenter.Send<Paindown.App>((Paindown.App)Xamarin.Forms.Application.Current, "UpdateMenu");
IsPresented = false;
}
else
{
Detail = new NavigationPage((Page)Activator.CreateInstance(item.TargetType));
masterPage.listView.SelectedItem = null;
IsPresented = false;
}
}
}
这是我在 MasterPage 的侧边栏菜单中定义页面的方式:
menu.Add(new MasterPageItem
{
Title = "Login",
TargetType = typeof(LoginPage)
});
我的问题来自 LoginPage,我该如何返回 HomePage?
【问题讨论】:
标签: c# xamarin.forms