我正在使用.net MAUI来制作一个应用程序。我正在处理一个登录页面,它也是我用于导航的导航堆栈的根页面。以下是我的页面的XAML:
`<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="ProcedureScheduler.Pages.LoginPage"
Shell.NavBarIsVisible="false">
<Grid>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<VerticalStackLayout
Grid.Column="1"
Grid.Row="1">
<Entry x:Name="UsernameEntry"
HorizontalOptions="Center"/>
<Label Text="Username"
HorizontalOptions="Center"/>
<Entry x:Name="PasswordEntry"
HorizontalOptions="Center"
IsPassword="true"/>
<Label Text="Password"
HorizontalOptions="Center"/>
<Button
x:Name="LoginButton"
Text="Login"
HorizontalOptions="Center"
Clicked="LoginButtonClicked" />
</VerticalStackLayout>
</Grid>
</ContentPage>`
下面是AppShell xaml:
`
<?xml version="1.0" encoding="UTF-8" ?>
<Shell
x:Class="ProcedureScheduler.AppShell"
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:ProcedureScheduler"
xmlns:pages="clr-namespace:ProcedureScheduler.Pages">
</Shell>
`
如您所见,我尝试使用“Shell.NavBarIsVisible”属性,但似乎没有任何作用。我也尝试在我的应用程序的其他页面上使用它,也没有结果。下面是登录屏幕的图片:
A login screen with the navigation bar at the top
1条答案
按热度按时间6ioyuze21#
从文档中禁用导航栏:
虽然
Shell.NavBarIsVisible
可以在子类Shell对象上设置,但它通常设置在任何希望使导航栏不可见的页面上。例如,下面的XAML演示如何禁用ContentPage中的导航栏。因此,您需要将
LoginPage
集成到Shell应用程序中,您的AppShell.xaml应该如下所示:App.xaml.cs:
在LoginPage.xaml中设置Shell.NavBarIsVisible=“false”:
输出: