2

私はWPFアプリケーションに取り組んでいます。StackPanelxaml ファイルに があります。StackPanel には 3 つのボタンがあります。問題は、すべてのボタンが左側または右側にあることです。私が欲しいのは、1 つのボタンが左側に 1 つ、右側に 2 つのボタンであるということです。

<StackPanel Orientation="Horizontal" FlowDirection="RightToLeft" >
    <Button Content="Open"/>
    <Button Content="Close"/>
    <Button Content="Help"/>
</StackPanel>

出来上がりはこんな感じ。 出力

ご覧のとおり、左側にたくさんのスペースがあります。[ヘルプ] ボタンを左端に配置し、[閉じる] ボタンと [開く] ボタンを右端に配置します。グリッドなどを実装することでできると思いますが、スタックパネルだけでできるかどうかお聞きしたいです。

4

2 に答える 2

8

でそれを行うことはできませんが、StackPanelを使用する必要はありませんGrid

DockPanelを妥協点として使用できます

<DockPanel LastChildFill="False">
  <Button Content="Help" DockPanel.Dock="Left" />
  <Button Content="Close" DockPanel.Dock="Right" />
  <Button Content="Open" DockPanel.Dock="Right" />
</DockPanel>

LastChildFill="False"最後に追加されたコントロールが残りのすべてのスペースを「埋めて」しまうことがないようにして、必要な外観を提供します。

于 2013-06-11T13:12:48.250 に答える
1

そのためには a を使用する必要がありますGrid:

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*" />
        <ColumnDefinition Width="Auto" />
        <ColumnDefinition Width="Auto" />
    </Grid.ColumnDefinitions>

    <Button Grid.Column="0" Content="Help"/>
    <Button Grid.Column="1" Content="Close"/>
    <Button Grid.Column="2" Content="Open"/>
</Grid>
于 2013-06-11T13:07:29.433 に答える