Может ли Граница заполнить пространство Stackpanel без настройки ширины? - PullRequest
1 голос
/ 08 января 2012

Вот некоторый xaml, который отображает панель стека, содержащую две границы рядом. Я хочу, чтобы вторая граница заполнила оставшуюся область панели стека, чтобы красный фон панели стека не был виден. Но теперь я вижу способ сделать это, кроме установки явной ширины на границе. Можно ли это как-то сделать без установки явной ширины?

<StackPanel Width="300" Background="Red" Orientation="Horizontal">
    <Border Width="100" Background="White">
        <TextBlock Text="Hello"/>
    </Border>
    <Border Background="Green">
        <TextBlock Text="World"/>
    </Border>
</StackPanel>

1 Ответ

1 голос
/ 08 января 2012

Не со стеклопакетом, нет.Stackpanel не ограничивает ширину своих дочерних элементов.Вы должны использовать Dockpanel или Grid для этого макета.

Что-то вроде

<DockPanel Width="300" Background="Red">
    <Border Width="100" Background="White">
        <TextBlock Text="Hello"/>
    </Border>
    <Border Background="Green">
        <TextBlock Text="World"/>
    </Border>
</DockPanel>
...