代码之家  ›  专栏  ›  技术社区  ›  thatguy14

在WPF中,为什么datagrid拒绝与我的窗口大小相同

  •  0
  • thatguy14  · 技术社区  · 3 年前

    我正在尝试使用dataview来呈现一个信息表。我希望dataview的大小与窗口的大小相同(不需要水平滚动),并且单元格文本太大时会被包装。这是我的XAML

    <Window x:Class="HDR_APC.formatted_report"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:HDR_APC"
        mc:Ignorable="d"
        Title="formatted_report" Height="450" Width="800">
    
        <Grid.RowDefinitions>
            <RowDefinition Height="25*"/>
            <RowDefinition Height="192*"/>
        </Grid.RowDefinitions>
        <Label Content="HDR APC" HorizontalAlignment="Left" Margin="36,0,0,0" VerticalAlignment="Center" FontSize="20"/>
        <DataGrid Name ="displayGrid" Grid.Row="1" HorizontalAlignment="Left" IsReadOnly="True" HeadersVisibility="Column" HorizontalScrollBarVisibility="Hidden">
            <DataGrid.Columns>
                <DataGridTextColumn Width="*">
                    <DataGridTextColumn.ElementStyle>
                        <Style>
                            <Setter Property="TextBlock.TextWrapping" Value="Wrap" />
                            <Setter Property="TextBlock.TextAlignment" Value="Center"/>
                        </Style>
                    </DataGridTextColumn.ElementStyle>
                </DataGridTextColumn>
            </DataGrid.Columns>
        </DataGrid>
    </Grid>
    

    我从不同的地方得到了这个关于细胞包装的信息。然而,无论我制作的数据网格大小如何,它总是只会让它有一个水平滚动条(见图)。

    datagrid size doesn't change width scrollbar or wrapping

    我不确定我在这件事上遗漏了什么。(此外,数据绑定发生在代码中)。我将非常感谢您的帮助。

    0 回复  |  直到 3 年前