2016-05-23 4 views
0

Ich habe Probleme beim Festlegen der Root-Seite meiner Anwendung. Ich konnte die richtige Seite nicht zeigen. Die erste Hauptseite ist der Standard von Anfang an und die zweite MainPage ist der Name der Seite, die ich erstellt habe. Hier ist mein Code.Festlegen der Root-Seite in Xamarin.Forms

App.cs

public App() 
    { 
     MainPage = new NavigationPage(new MainPage()); 

    } 

Und hier ist der Code meines der Seite, die ich als Root-Seite festlegen möchten.

MainPage.xaml

<?xml version="1.0" encoding="utf-8" ?> 
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" 
     xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
     xmlns:local="clr-namespace:XamarinDemoApp" 
     x:Class="XamarinDemoApp.MainPage" 
     xmlns:ViewModels="clr-namespace:XamarinDemoApp.ViewModels;assembly=XamarinDemoApp"> 

    <ContentPage.BindingContext> 
     <ViewModels:MainViewModel /> 
    </ContentPage.BindingContext> 


    <ListView ItemsSource="{Binding EmployeesList}" 
     HasUnevenRows="True"> 

<ListView.ItemTemplate> 
    <DataTemplate> 
    <ViewCell> 
     <StackLayout Orientation="Horizontal"> 
     <Label Text="{Binding Name}" 
       FontSize="24"/> 
     <Label Text="{Binding Department}" 
       FontSize="18" 
       Opacity="0.6"/> 
     </StackLayout> 
    </ViewCell> 
    </DataTemplate> 
</ListView.ItemTemplate> 


</ListView> 





</ContentPage> 

Dies ist der Code hinter meinem MainPage.xaml.cs

using System; 
    using System.Collections.Generic; 
    using System.Linq; 
    using System.Text; 
    using System.Threading.Tasks; 

    using Xamarin.Forms; 
    using XamarinDemoApp.ViewModels; 

    namespace XamarinDemoApp 
    { 
     public partial class MainPage : ContentPage 
     { 
      public MainPage() 
      { 
     InitializeComponent(); 
     NavigationPage.SetHasNavigationBar(this, false); 

      } 
     } 
    } 

Dies ist der Stack Trace-Feld I erhalten.

[External Code] 
> 0xC in XamarinDemoApp.MainPageMain.InitializeComponent at c:\Users\LIFEBOOK E743\Documents\Visual Studio 2013\Projects\XamarinDemoApp\XamarinDemoApp\obj\Debug\XamarinDemoApp.Views.MainPageMain.xaml.g.cs:21,13 C# 
    0x9 in XamarinDemoApp.MainPageMain..ctor at c:\Users\LIFEBOOK E743\Documents\Visual Studio 2013\Projects\XamarinDemoApp\XamarinDemoApp\Views\MainPageMain.xaml.cs:16,13 C# 
    0x9 in XamarinDemoApp.App..ctor at c:\Users\LIFEBOOK E743\Documents\Visual Studio 2013\Projects\XamarinDemoApp\XamarinDemoApp\App.cs:14,12 C# 
    0x12 in XamarinDemoApp.Droid.MainActivity.OnCreate at c:\Users\LIFEBOOK E743\Documents\Visual Studio 2013\Projects\XamarinDemoApp\XamarinDemoApp.Droid\MainActivity.cs:20,13 C# 
    0x13 in Android.App.Activity.n_OnCreate_Landroid_os_Bundle_ at /Users/builder/data/lanes/3053/a94a03b5/source/monodroid/src/Mono.Android/platforms/android-23/src/generated/Android.App.Activity.cs:2857,4 C# 
+0

Welche Fehler haben Sie bekommen? – Vishnu

+0

zeigen Sie mir Ihren MainPage-Code hinter XAML-Datei –

+0

@ Vishnu das ist der Fehler Sir. System.Reflection.TargetInvocationException: Vom Ziel eines Aufrufs wurde eine Ausnahme ausgelöst. –

Antwort

0

Dies ist an der falschen Stelle ...

NavigationPage.SetHasNavigationBar(this, false); 

Es sollte

sein
public App() 
{ 
    var mainPage = new NavigationPage(new MainPage()); 
    NavigationPage.SetHasNavigationBar(this, false); 
    MainPage = mainPage; 

}