繁体   English   中英

DataGridTextColumn.Header 中元素的宽度

[英]Width of element in DataGridTextColumn.Header

请帮助如何将 DataGridTextColumn.Header 中的文本框的宽度拉伸到整个长度。

<DataGridTextColumn x:Name="BColumn" Width="*">
                    <DataGridTextColumn.Header>
                        <StackPanel Orientation="Vertical" HorizontalAlignment="Center" MinWidth="20">
                            <TextBlock Text="B" VerticalAlignment="Top" FontStyle="Normal" HorizontalAlignment="Center"/>
                            <TextBox HorizontalAlignment="Stretch"                                             
                                     VerticalAlignment="Bottom"/>
                        </StackPanel>
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>

应用程序链接 window: https://ibb.co/KjRhCPG

您需要在DataGridColumnHeader上将 Horizo HorizontalContentAlignment属性设置为Stretch 以下是你如何通过一种风格来做到这一点:

<Style TargetType="DataGridColumnHeader">
    <Setter Property="HorizontalContentAlignment" Value="Stretch" />
</Style>

您需要在DataGrid.Resources中添加此样式。

然后,您需要为您的Header内容使用Grid而不是StackPanel ,因为Grid占用了整个可用空间而StackPanel没有

这是完整的 XAML:

<DataGrid>
    <DataGrid.Resources>
        <Style TargetType="DataGridColumnHeader">
            <Setter Property="HorizontalContentAlignment" Value="Stretch" />
        </Style>
    </DataGrid.Resources>
    <DataGrid.Columns>
        <DataGridTextColumn x:Name="BColumn" Width="*">
            <DataGridTextColumn.Header>
                <Grid MinWidth="20">
                    <Grid.RowDefinitions>
                        <RowDefinition />
                        <RowDefinition />
                    </Grid.RowDefinitions>
                    <TextBlock Text="B" VerticalAlignment="Top" FontStyle="Normal" HorizontalAlignment="Center"/>
                    <TextBox HorizontalAlignment="Stretch"                                             
                             VerticalAlignment="Bottom" Grid.Row="1"/>
                </Grid>
            </DataGridTextColumn.Header>
        </DataGridTextColumn>
    </DataGrid.Columns>
</DataGrid>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM