用户控件宽度伸展时,WPF DataGrid缩小列

时间:2019-01-15 17:54:52

标签: c# wpf

我试图将数据网格添加到具有主控件宽度设置为可拉伸的UserControl中。控件被添加到主面板上的StackPanel中,我希望控件的宽度能够伸展。

我的datagrid设置了宽度,但是除非我在用户控件上定义宽度,否则所有列都会缩小到大约10个像素。

<Expander Header="Issues" HorizontalAlignment="Stretch" HorizontalContentAlignment="Stretch" Margin="4,86,4,4" VerticalAlignment="Stretch" IsExpanded="False">
    <Grid Background="#FFE5E5E5" HorizontalAlignment="Stretch" Width="Auto">
        <DataGrid x:Name="dg_issues" CanUserResizeRows="False" CanUserReorderColumns="False" CanUserAddRows="False" CanUserDeleteRows="False" CanUserSortColumns="False" CanUserResizeColumns="True" HorizontalAlignment="Stretch" AutoGenerateColumns="False" HeadersVisibility="Column" SelectionMode="Single">
             <DataGrid.Columns>
                 <DataGridTextColumn Header="ID" Binding="{Binding Key}" Width="60"/>
                 <DataGridTextColumn Header="Status" Binding="{Binding Status}" Width="60"/>
                 <DataGridTextColumn Header="Summary" Binding="{Binding Summary}" Width="*"/>
                <DataGridTextColumn Header="Time Spent" Binding="{Binding TimeSpent}" Width="70"/>
                <DataGridTextColumn Header="Remaining" Binding="{Binding Remaining}" Width="70"/>
            </DataGrid.Columns>
        </DataGrid>
    </Grid>
</Expander>

Example Screenshot

1 个答案:

答案 0 :(得分:0)

结果证明将数据网格包装在具有水平滚动条的ScrollViewer中会导致此问题。

我发现了这个问题,这使我想到了解决方案,请禁用水平条,因为我不需要它。 SELECT INTO with IDENTITY column in expression is handled inconsistently

<ScrollViewer HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto">