Xamarin形式:如何显示Framelayout的另一个顶部?

时间:2019-06-07 09:12:06

标签: xamarin.forms

我的设计如下。左侧是即将发生的事件,右侧是所有事件。

单击即将发生的事件时,我需要显示即将发生的事件的布局,包括圆角,它应该位于所有事件布局的顶部(屏幕截图的顶部)。单击所有事件时,我需要完整显示所有事件的布局,包括圆角(底部)。请查看以下屏幕截图:

我正在为此设计使用Framelayout,并在下面查看我的代码:

<StackLayout
      Orientation="Horizontal"
      HorizontalOptions="FillAndExpand">

       <Frame
              x:Name="Upcoming_layout"
              Padding="8"
              Margin="8,0,0,0"
              HorizontalOptions="FillAndExpand"
              CornerRadius="20"
              BackgroundColor="#0091da">

          <Label 
               x:Name="Upcoming_label"
               HorizontalOptions="CenterAndExpand"
               Text="Upcoming Events"
               HorizontalTextAlignment="Center"
               FontSize="18"
               TextColor="#FFFFFF"/>
         </Frame>

           <Frame
                  x:Name="All_layout"
                  HorizontalOptions="FillAndExpand"
                  CornerRadius="20"
                  Margin="-35,0,8,0"
                  Padding="8"
                  BackgroundColor="#28b0f4">

              <Label 
                   Text="All Events"
                   x:Name="allevents_label"
                   HorizontalTextAlignment="Center"
                   HorizontalOptions="CenterAndExpand"
                   FontSize="18"
                   TextColor="#aee4ff"/>
           </Frame>
     </StackLayout>

我为第二帧添加了一些负边距,并且第二个布局始终位于第一个布局的顶部。请参见下面的屏幕截图:

点击第一个布局时,我需要在顶部,而点击所有事件时,它应显示在顶部。这个问题有解决办法吗?

1 个答案:

答案 0 :(得分:2)

您可以使用 RaiseChild

YourStackLayout.RaiseChild(Upcoming_layout)