title: Scrollview scrolls up-and-over other content when scrolling
body: <p>When layin out this form, I want a header the size of its content, footer the size of the content, and a middle that expands to take up the rest.  Easy in XAML/UWP.  But in Xamarin Forms when the ScrollView content has data it floats and overlays the top and bottom.  Also when I drag/scroll the ScrollView it can go to the top of the screen.  How to dock the scrollview properly so I have a scrolling middle region?  Thx...</p>
  
  <p>Pictures and XAML layout below....</p>
  
  <p><a href="https://i.stack.imgur.com/K4WzR.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/K4WzR.png" alt="enter image description here"></a></p>
  
  <p><a href="https://i.stack.imgur.com/6Vybb.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/6Vybb.png" alt="enter image description here"></a></p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8" ?&gt;
  &lt;ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
           xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
           x:Class="BaseProject.MainPage"&gt;
  &lt;Label Text="{Binding MainText}" VerticalOptions="Center" HorizontalOptions="Center" /&gt;
  &lt;Grid&gt;
  &lt;Grid.RowDefinitions&gt;
    &lt;RowDefinition Height="Auto"/&gt;
    &lt;RowDefinition Height="*"/&gt;
    &lt;RowDefinition Height="Auto"/&gt;
  &lt;/Grid.RowDefinitions&gt;
  &lt;TableView Grid.Row="0" Intent="Settings" BackgroundColor="Blue" HeightRequest="150" &gt;
    &lt;TableSection Title="Search"&gt;
      &lt;ViewCell&gt;
        &lt;Button x:Name="Button_Search" Text="Go"/&gt;
      &lt;/ViewCell&gt;
      &lt;EntryCell x:Name="Entry_Cell_SearchFor" /&gt;
    &lt;/TableSection&gt;
  &lt;/TableView&gt;
  &lt;ScrollView Grid.Row="1" VerticalOptions="FillAndExpand" Orientation="Vertical"&gt;
    &lt;StackLayout BackgroundColor="Red" &gt;
      &lt;Label Text="body" x:Name="Label_Body" BackgroundColor="Yellow" /&gt;
    &lt;/StackLayout&gt;
  &lt;/ScrollView&gt;
    &lt;StackLayout Grid.Row="2"&gt;
      &lt;Label Text="footer"/&gt;
    &lt;/StackLayout&gt;
    &lt;/Grid&gt;
  &lt;/ContentPage&gt;
  </code></pre>