[英]XAML Vertically align only top stackpanel
我有一個視圖,其中包含兩個堆棧面板(主要的)。 最上面的是微調器,我需要垂直居中放置“請稍等...”。 當最上面的一個消失時,最下面的一個出現,我需要拉伸它,以便內容顯示在窗口的頂部。
<ScrollViewer VerticalScrollBarVisibility="Auto">
<StackPanel HorizontalAlignment="Stretch" VerticalAlignment="Center">
<local:BusyIndicator VerticalAlignment="Center" HorizontalAlignment="Center" Width="50" Height="50" Visibility="{Binding Path=IsBusy, Converter={StaticResource booleanToVisibilityConverter}}"/>
<TextBlock VerticalAlignment="Center" HorizontalAlignment="Center" Text="One Moment Please" Visibility="{Binding Path=IsBusy, Converter={StaticResource booleanToVisibilityConverter}}"/>
<StackPanel HorizontalAlignment="Center" Visibility="{Binding Path=HasError, Converter={StaticResource booleanToVisibilityConverter}}">
<TextBlock
Visibility="{Binding Path=HasError, Converter={StaticResource booleanToVisibilityConverter}}"
Text="{Binding Path=ErrorMessage}" VerticalAlignment="Center" HorizontalAlignment="Center" FontSize="12" TextWrapping="Wrap"/>
</StackPanel>
<StackPanel VerticalAlignment="Stretch" Orientation="Vertical" Visibility="{Binding Path=IsBusy, Converter={StaticResource inverseBooleanToVisibilityConverter}}">
</Stackpanel>
</ScrollViewer>
一直發生的問題是,底部堆棧面板垂直居中,內容沒有移動到窗口頂部。
抱歉,我無法顯示實際視圖(NDA)。 我正在嘗試做的事情(右圖),正在發生的事情(左圖)。 注意:一次只顯示文本或微調框。 我沒有試圖將兩者對齊,只是在不顯示文本時使微調框垂直居中。
您的booleanToVisibilityConverter是否返回Visibility.Collapsed或.Hidden為False? 它應該返回Collapsed以便回收空間。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.