2017-02-21 8 views
2

У меня есть StackLayout в MasterPage из MasterDetailPage в Xamarin Forms, который имеет VerticalOptions «FillAndExpand», но не заполняет всю ContentPage в моем приложении UWP (Я не знаю, если он работает правильно на Android или iOS). На скриншоте вы можете увидеть зеленую полосу в левом нижнем углу.Xamarin Forms Stacklayout не заполняет весь MasterPage в приложении UWP

Что я могу сделать, чтобы StackLayout заполнил весь MasterPage?

enter image description here

Вот мой MasterPage:

<?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:prism="clr-namespace:Prism.Mvvm;assembly=Prism.Forms" 
       xmlns:local="clr-namespace:TobyList_XamarinForms" 
       Title="Toby" 
      prism:ViewModelLocator.AutowireViewModel="True" 
      x:Class="TobyList_XamarinForms.Views.MasterPage" 
       BackgroundColor="Green"> 

    <StackLayout Padding="5" VerticalOptions="FillAndExpand" BackgroundColor="#F9F9F9" /> 

</ContentPage> 
+0

добавить HorizanalOptions = VerticalOptions = «FillAndExpand» –

+0

Добавление «HorizontalOptions» не имеет значения. – mKay

+0

положите backgroudcolor на stacklayout –

ответ

2

Я завернул MasterPage в NavigationPage и теперь StackLayout заполняет весь MasterPage, как я хотел.

Теперь приложение выглядит так, без зеленой полоски:

enter image description here

А вот изменение в XAML коде моего MainPage:

<MasterDetailPage.Master> 

     <NavigationPage Title="Test"> 
      <x:Arguments> 
       <local:MasterPage /> 
      </x:Arguments> 
     </NavigationPage> 

    </MasterDetailPage.Master> 
1

Что я могу сделать, чтобы StackLayout заполнить всю MasterPage?

Вы можете изменить основное поведение по умолчанию. Попробуйте использовать следующий код.

this.MasterBehavior = MasterBehavior.SplitOnPortrait; 

enter image description here

+0

Это работает, но я хочу, чтобы это было с разделенным поведением. Но благодаря вам я попробовал что-то еще, которое работает так, как я хочу. Я просто завернул MasterPage в NavigationPage (см. Мой ответ). – mKay

Смежные вопросы