簡體   English   中英

WPF擴展器-“水平對齊”設置為“右”,但在擴展時跳到左

[英]WPF Expander - Horizontal Alignment set to Right, but jumps to left on when expanded

我有一個正確對齊的WPF擴展器。 該位正確顯示在屏幕上,但是當您展開它時,擴展器和文本“顯示/隱藏歷史數據”將跳到屏幕左側。 關閉擴展器,它返回正確的(右)對齊。

我嘗試了各種方法,但無法找到原因,更重要的是如何保持擴展的擴展器正確對齊

  <Grid Grid.Row="1"                    
    HorizontalAlignment="Stretch">
     <Grid.RowDefinitions>
      <RowDefinition Height="auto"/>
      <RowDefinition Height="auto"/>                               
     </Grid.RowDefinitions>
     <Grid.ColumnDefinitions>
       <ColumnDefinition Width="*" />
     </Grid.ColumnDefinitions>

      <StackPanel Grid.Row="0"  >
            <TextBlock Style="{StaticResource SubHeader}" Text="Historic Data Sets" />                                               
           <Rectangle Style="{StaticResource HeaderLine}"/>
      </StackPanel>

       <Expander Header="show/hide historic data"
                 Grid.Column="1"
                 IsEnabled="True" 
                 VerticalAlignment="Center" 
                 HorizontalAlignment="Right" 
                 ExpandDirection="Down">       

   <!-- some other stuff in the second row such as grid... -->
</Expander>

您可以通過將Header明確標記為TextBlock然后更改它的HorizontalAlignment屬性來控制Header

<Expander.Header>
    <TextBlock 
        Width="200"
        HorizontalAlignment="Right"
        Text="Show information.."></TextBlock>
</Expander.Header>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM