2016-06-24 7 views
5

単純なMaster Detailページを既存のXamarinアプリケーションに追加しようとしています。Xamarin - MasterDetailPageをコンテナに追加する前にMasterとDetailを設定する必要があります。

マスターとディテール コンテナにMasterDetailPageを追加する前に設定する必要があります。私はページへのナビゲーションは、ときに私は次のエラーを取得するアプリケーションを実行すると、ここでMasterDetailPage宣言

<MasterDetailPage xmlns="http://xamarin.com/schemas/2014/forms" 
        xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
        xmlns:pages="clr-namespace:MyCareManager.XamForms.Pages;assembly=MyCareManager.XamForms" 
        x:Class="MyCareManager.XamForms.Pages.SettingsPage"> 
    <MasterDetailPage.Master> 
    <ContentPage Title="This is the test master page"></ContentPage> 
    </MasterDetailPage.Master> 
    <MasterDetailPage.Detail> 
    <NavigationPage> 
     <x:Arguments> 
     <ContentPage Title="This is a view"></ContentPage> 
     </x:Arguments> 
    </NavigationPage> 
    </MasterDetailPage.Detail> 
</MasterDetailPage> 

は、しかし、です

私は、アプリケーションでIOCコンテナとして使用されているが、指を置くことができなかったオートファクトとすることを前提としています。他の誰かがこれを経験しましたか?

答えて

2

はここにいくつかのいずれかがそれを必要とする場合、私のランニングコードです:

<?xml version="1.0" encoding="utf-8" ?> 
<MasterDetailPage xmlns="http://xamarin.com/schemas/2014/forms" 
      xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
      x:Class="CrossApp1.MenuPage"> 
     <MasterDetailPage.Master> 
      <ContentPage Title="Menu"> 
      <StackLayout Orientation="Vertical"> 
       <Button Text="Sports"/> 
       <Button Text="Economy"/> 
       <Button Text="Education"/> 
       <Button Text="Science"/> 
      </StackLayout> 
      </ContentPage> 
     </MasterDetailPage.Master> 

     <MasterDetailPage.Detail> 

      <NavigationPage> 
      <x:Arguments> 
       <ContentPage Title="This is a view"></ContentPage> 
      </x:Arguments> 
      </NavigationPage> 
     </MasterDetailPage.Detail> 
</MasterDetailPage> 
0

私は、ファイルの後ろに私のMasterDetailPageコードにInitializeComponent();を使うのを忘れていました。あなたの場合はSettingsPageでなければなりません。彼は私にエラーを一度示したので、私はそれをコメントアウトしました。

0

これを試すことができます。マスター詳細ページの簡単なクラスを開きます。 MyMasterPageという名前を設定します(希望する名前を設定します)。

public class MyMasterPage : MasterDetailPage 
    { 
     public MyMasterPage() 
     { 
      this.Master = new MenuPage();//name of your menupage     
      this.Detail = new DetailPage();//name of your detailpage 

     } 
    } 

マスター詳細ページがあります。最後に2つのContentPageを追加する必要があります.1つはメニューページ、もう1つはDetailPageです。

関連する問題