WPF ListBox проблема с разрешением - PullRequest
1 голос
/ 19 марта 2009

У меня есть элемент управления WPF ListBox. Может иметь длинный список предметов.

Когда я работаю с нормальным разрешением экрана, т.е. 1024 * 768, он показывает список с полосой прокрутки правильно, если я упомяну MinHeight и MaxHeight для списка.

и когда я переключаюсь на другое разрешение, которое составляет 1280 * 1024, в идеале, список должен соответствовать разрешению экрана. но это не происходит. Из-за высоты, о которой я упоминал, она остается прежней, оставляя много пустого пространства внизу, что, очевидно, выглядит не очень хорошо.

и мне нужна полоса прокрутки для нормального разрешения 1024 * 768, поэтому я должен поставить MinHeight и MaxHeight.

Есть ли какое-либо решение для просмотра расширенного ListBox, который должным образом занимает пространство для более высоких разрешений?

Спасибо

Ответы [ 2 ]

1 голос
/ 19 марта 2009

Используйте панели для размещения ваших элементов управления - не используйте явную ширину и высоту. Например:

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

    <!-- ListBox will take up all remaining space after the Button -->
    <ListBox/>
    <!-- Button will take up only the space it needs -->
    <Button Grid.Row="1"/>
</Grid>
0 голосов
/ 19 марта 2009

                <StackPanel Orientation="Horizontal"  Margin="0,0,0,5" VerticalAlignment="Top" HorizontalAlignment="Left" Grid.Row="0">
                    <Label  FontWeight="Bold" FontSize="11" HorizontalAlignment="Left" Margin="0,0,5,5">Term:</Label>
                    <ComboBox x:Name="Term" Margin="0,5,5,0">
                    </ComboBox>                        
                </StackPanel>
                <CheckBox Grid.Row="1" HorizontalAlignment="Left" VerticalAlignment="Top" x:Name="displaySummaryCheckBox" Margin="2,2,0,5"  FontSize="11" Content="Display Summary" IsChecked="True" FontWeight="Normal"></CheckBox>

            </Grid>                
            <Grid DockPanel.Dock="Bottom">

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

                    <Label Grid.Row="0" VerticalAlignment="Top" Margin="0,0,0,4" HorizontalAlignment="Left" FontWeight="Bold" FontSize="11">Display Columns</Label>
                    <ListBox Grid.Row="1" VerticalAlignment="Top" Margin="5,0,5,4" HorizontalAlignment="Left" x:Name="columnsList" Width="197"  FontSize="11">

                    </ListBox>
                    <Button Grid.Row="2"  Margin="5,0,5,2" HorizontalAlignment="Left" VerticalAlignment="Top" x:Name="selectAll" Width="75" Content="Select All" FontWeight="Normal"  FontSize="11" Height="23" Click="selectAll_Click"/>
                </Grid>

            </Grid>

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