2016-08-26 1 views
0

Dockパネルに9つのテキストブロックを埋めたいと思います。テキストブロックがドックパネル全体を埋めるようにしたいと思います。私は高さをautoに設定し、縦横のアライメントを伸ばします。Dockpanel複数のテキストブロックサイズ?

ただし、テキストブロックはドックパネル全体を埋めるものではありません。間違っている可能性のあるアイデアありがとう

私のドックパネルはグリッド内にあります。両側に

<Border DockPanel.Dock="Top" Background="White" BorderBrush="DodgerBlue" BorderThickness="5,5,5,5" CornerRadius="10" Margin="2" Height="700"> 
      <DockPanel > 
       <TextBlock DockPanel.Dock="Top" Name="txtID" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Height="Auto">1</TextBlock> 
       <TextBlock DockPanel.Dock="Top" Name="txtOAG" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Height="Auto">2</TextBlock> 
       <TextBlock DockPanel.Dock="Top" Name="txtFAILURE_ID" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Height="Auto">3</TextBlock> 
       <TextBlock DockPanel.Dock="Top" Name="txtWIDTH" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Height="Auto">4</TextBlock> 
       <TextBlock DockPanel.Dock="Top" Name="txtHeight" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Height="Auto">5</TextBlock> 
       <TextBlock DockPanel.Dock="Top" Name="txtBARCODE_READ" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Height="Auto">6</TextBlock> 
       <TextBlock DockPanel.Dock="Top" Name="txtBARCODE_NUM" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Height="Auto">7</TextBlock> 
       <TextBlock DockPanel.Dock="Top" Name="txtANOMOLY" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Height="Auto">8</TextBlock> 
       <TextBlock DockPanel.Dock="Top" Name="txtTRACECODE" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Height="Auto">9</TextBlock> 

      </DockPanel> 
     </Border> 
+0

それは 'DockPanel'する必要がありますか? 'DockPanel'を' Grid'で置き換えて、共有高さの行を使用できないのはなぜですか? – GregaMohorko

+0

私はstackpanelで試してみると、うまく動作しませんでした。私はそれがグリッドで動作することを知っているが、ドック/スタックパネルでそれを行う方法がなければならない。 – user3363744

+0

いいえ、本当はありません。 StackPanelはすべてを「スタック」しますが、DockPanelは両側に「ドック」し、デフォルトでは最後の子が残りの領域を埋めます。行と共有高さを持つグリッドを使用する必要があります。 – GregaMohorko

答えて

1

DockPanel "ドック"、一緒にStackPanel "スタック"。 Gridを使用してください。この(3行の一例)と同様に

<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition /> 
     <RowDefinition /> 
     <RowDefinition /> 
    </Grid.RowDefinitions> 
    <TextBlock Text="1" /> 
    <TextBlock Grid.Row="1" Text="2" /> 
    <TextBlock Grid.Row="2" Text="3" /> 
</Grid> 
関連する問題