1

完全不熟悉 XAML,我试图设计一个非常简单的布局,其中主页由两部分组成:

  1. 在左侧,我想要一个可以缩放以适应可用高度但保持其纵横比的图像。
  2. 在右边,我想要一个最终包含文本和控件的面板——目前我只有文本。

我可以通过使用 a 使图像表现良好,ViewBox但我似乎无法让屏幕的右侧来填补剩余的空白。看截图:

显示对齐错误的屏幕截图

我想要的是包含文本的区域向右伸展,文本居中。

相关的 XAML 代码是:

<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
  <StackPanel Orientation="Horizontal">
    <Viewbox HorizontalAlignment="Right">
      <Image Source="Assets/ABCImage.png"></Image>
    </Viewbox>
    <StackPanel Orientation="Vertical">
      <TextBlock Text="ABC Viewer"
                 TextAlignment="Center"
                 FontSize="48"></TextBlock>
      <TextBlock Text="Test application"
                 TextAlignment="Center"
                 FontSize="24"></TextBlock>
    </StackPanel>
  </StackPanel>
</Grid>

这让我花了很长时间才弄清楚。有人可以让我摆脱痛苦吗?

4

1 回答 1

4

尝试这个 :

<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
  <Grid.ColumnDefinitions>
    <ColumnDefinition Width="Auto" />
    <ColumnDefinition Width="*" />
  </Grid.ColumnDefinitions>
  <Viewbox Grid.Column="0"
           HorizontalAlignment="Right">
    <Image Source="Assets/ABCImage.png"></Image>
  </Viewbox>
  <StackPanel Grid.Column="1">
    <TextBlock Text="SEM Viewer"
               TextAlignment="Center"
               FontSize="48" />
    <TextBlock Text="Test application"
               TextAlignment="Center"
               FontSize="24" />
  </StackPanel>
</Grid>
于 2013-04-12T12:06:57.807 回答