Как растянуть высоту списка с помощью XAML в wpf? - PullRequest
0 голосов
/ 31 января 2012

Мое окно - это Сетка, 2-й ряд растягивается, чтобы заполнить окно.

    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
        <RowDefinition Height="Auto"/>
    </Grid.RowDefinitions>

Содержимое 2-го ряда представляет собой StackPanel. Я подражал решению аналогичного вопроса на SO, и он не работает для меня: высота списка не растягивается, чтобы заполнить 2-ю строку. Что не так с моим кодом? Спасибо.

    <StackPanel x:Name="lbStackPanel" Grid.Row="1" >
        <ListBox Name="listBox1" Height="{Binding ElementName=lbStackPanel, Path=ActualHeight}">
        ...
        </ListBox>
    </StackPanel>

Ответы [ 2 ]

4 голосов
/ 31 января 2012

Игнорировать StackPanel и просто иметь ListBox, который занимает второй ряд (Grid.Row = "1"). Установите значения HorizontalAlignment и VerticalAlignment для ListBox в «Растянуть». Высота ListBox будет занимать весь второй ряд. Это намного проще, чем привязка к высоте StackPanel.

4 голосов
/ 31 января 2012

Зачем тебе там StackPanel?

Просто выньте его, и строка должна иметь правильный размер.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...