Окно заполнения WPF Scrolling DataGrid - PullRequest
0 голосов
/ 31 октября 2018

Это должно быть самой простой вещью в мире. У меня есть WPF DataGrid с большим количеством строк, чем уместится в поле зрения. Я хочу, чтобы DataGrid заполнял доступное пространство в окне и отображал вертикальную полосу прокрутки, если это необходимо. Я мог бы сделать это в считанные секунды в WinForms или HTML.

Если я назначу DataGrid фиксированную высоту, я получу вертикальную полосу прокрутки, но это не позволяет изменить размер окна.

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

Кто-нибудь знает простой ответ на этот вопрос?

UPDATE:

Вот код:

<StackPanel>
    <DockPanel>
        <Menu DockPanel.Dock="Top">
            <MenuItem Header="_File">
                <MenuItem Header="_Open" Command="{Binding Path=OpenCommand}"/>
                <Separator/>
                <MenuItem Header="_Recent Files" ItemsSource="{Binding MRUItems}"/>
                <Separator/>
                <MenuItem Header="E_xit" Command="{Binding ExitCommand}"/>
            </MenuItem>
        </Menu>
    </DockPanel>
        <DataGrid ItemsSource="{Binding Path=WordUsage}" >
        <DataGrid.Columns>
            <DataGridTextColumn Header="Order" Binding="{Binding Order}"/>
            <DataGridTextColumn Header="Word"  Binding="{Binding Word}"/>
            <DataGridTextColumn Header="Count" Binding="{Binding Count}"/>
        </DataGrid.Columns>
    </DataGrid>
</StackPanel>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...