c# /WPF:将数据网格的上边框与大小不同的图像的上边框对齐

本文关键字:边框 对齐 图像 WPF 数据 数据网 网格 | 更新日期: 2023-09-27 18:06:11

我正在使用c#开发一个WPF应用程序。网格将应用程序划分为2列。在左列中,我放置了一个数据网格,在右列中,我放置了一个图像。该图像设置了选项Stretch="Uniform",因此,如果主窗口的大小发生变化,则采用其高度来最佳地填充网格列,并保持其长宽比。图片必须垂直居中。

因此,上面的设置导致图像顶部的白色/空白边框。我想将左列中的dataGrid顶部对齐到右列中自动缩放图像的顶部。因此,我必须以某种方式将图像距上边框的距离数据绑定到距上边框的数据网格距离

c# /WPF:将数据网格的上边框与大小不同的图像的上边框对齐

您可能只需要在网格面板中的元素上设置verticalalign ="Top"。在下面的例子:

 <Grid>
    <Grid VerticalAlignment="Center">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto"/>
            <ColumnDefinition Width="*"/>
        </Grid.ColumnDefinitions>
        <Image Grid.Column="0"
           VerticalAlignment="Top"
           MaxWidth="100"
           Source="https://www.google.com/images/srpr/logo11w.png"></Image>
        <DataGrid Grid.Column="1" 
              Margin="10 0 0 0"
           VerticalAlignment="Top">
            <DataGrid.Columns>
                <DataGridTextColumn Header="Column1"/>
                <DataGridTextColumn Header="Column2"/>
                <DataGridTextColumn Header="Column3"/>
                <DataGridTextColumn Header="Column4"/>
            </DataGrid.Columns>
        </DataGrid>
    </Grid>
</Grid>