2017-02-20 104 views
1

我在XAML中有页面,需要它在纯C#中。但无法弄清楚如何转换它。如何将XAML转换为纯C#?

<?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="xmr_cross_test.Navigation.MDPage"> 

    <MasterDetailPage.Master> 
    <ContentPage Title="Menu"> 
     <StackLayout Orientation="Vertical"> 
     <ListView x:Name="navigationDrawerList" 
        RowHeight="60" 
        SeparatorVisibility="None" 
        ItemSelected="OnMenuItemSelected"> 
     </ListView> 
     </StackLayout> 

    </ContentPage> 
    </MasterDetailPage.Master> 

    <MasterDetailPage.Detail> 
    <NavigationPage> 

    </NavigationPage> 
    </MasterDetailPage.Detail> 
</MasterDetailPage> 

如何做到保持绑定和能力改变MasterDetailPage.Detail

我不得不删除ListView.ItemTemplate声明,因为SO不允许发布如此大量的代码。猜想在我得到答案后找出答案并不难。

回答

2
MasterDetailPage mdp = new MasterDetailPage(); 
ContentPage master = new ContentPage { Title = "Menu" }; 
StackLayout menu = new StackLayout(); 
ListView menuList = new ListView() { RowHeight = 60 }; 
menuList.ItemSelected += OnMenuItemSelected; 
ContentPage detail = new ContentPage(); 

menu.Children.Add(menuList); 
master.Content = menu; 
mdp.Master = master; 

mdp.Detail = new NavigationPage(detail);