NavBar没有出现在Xamarin的DetailPage上

问题描述 投票:2回答:1

我正在构建一个Xamarin跨平台应用程序!

App coantain 3页:

qazxsw poi(带抽屉菜单的MasterDetailPage)

MainPage(ContentPage)

HomePage(ContentPage)

DetailGetData显示listview中的项目列表,每个项目都是可选择的,并在Homepage的下一页显示其详细信息

问题是当它在下一页显示详细信息时DetailGetData没有出现,我不知道为什么要帮助我完成这个!

ScreenShot:NavBar

DetailGetData.xaml:

https://i.stack.imgur.com/1csoB.png

DetailGetData.xaml.cs:

<ContentPage 
         xmlns="http://xamarin.com/schemas/2014/forms"
         xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
         x:Class="MSPL.Views.DetailGetData">


<Frame  BackgroundColor="White" HasShadow="True" BorderColor="White" 
        HorizontalOptions="CenterAndExpand"  VerticalOptions="CenterAndExpand" 
        Padding="0" Margin="0" HeightRequest="250" WidthRequest="240">




    <Grid Padding="0" Margin="0" HorizontalOptions="CenterAndExpand" VerticalOptions="CenterAndExpand" BackgroundColor="White" RowSpacing="0">
        <Grid.RowDefinitions>
            <RowDefinition Height="100"/>
            <RowDefinition Height="50"/>
            <RowDefinition Height="50"/>
            <RowDefinition Height="50"/>
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="250"/>

        </Grid.ColumnDefinitions>


        <Image Source="ford.jpg" Grid.Column="0" Grid.Row="0" HorizontalOptions="FillAndExpand" Aspect="AspectFill" VerticalOptions="FillAndExpand" />

        <Label  Text="{Binding employee_name }" TextColor="#00477f" x:Name="empname" Grid.Column="0" Grid.Row="1" HorizontalOptions="Center"/>
        <Label  Text="{Binding employee_age }" TextColor="#00477f" x:Name="age" Grid.Column="0" Grid.Row="2" HorizontalOptions="Center"/>
        <Label  Text="{Binding employee_salary }" TextColor="#00477f" x:Name="salary" Grid.Column="0" Grid.Row="3" HorizontalOptions="Center"/>

    </Grid>
</Frame>
xaml xamarin.forms cross-platform navbar
1个回答
1
投票

仅当您的页面包含在导航页面中时,才会显示导航栏。从你的MasterDetail你会做这样的事情

using MSPL.MenuItems;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xamarin.Forms;
using Xamarin.Forms.Xaml;

namespace MSPL.Views
{
    [XamlCompilation(XamlCompilationOptions.Compile)]
    public partial class DetailGetData : ContentPage
    { 

    public GetData thisData;

    public DetailGetData()
    {

    }

    public DetailGetData (GetData _data)
    {
        NavigationPage.SetHasNavigationBar(this, true);
        InitializeComponent ();
        BindingList(_data);
        thisData = _data;
    }

    public void BindingList(GetData data)
    {
        empname.Text = data.employee_name;
        age.Text = data.employee_age;
        salary.Text = data.employee_salary;
    }     
}
}
© www.soinside.com 2019 - 2024. All rights reserved.