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

C#/WPF:将数据网格的上边框与大小不同的图像的上边框对齐,c#,wpf,datagrid,C#,Wpf,Datagrid,我正在使用C#开发一个WPF应用程序。网格将应用程序分为两列。在左栏我放置了一个数据网格,在右栏我有一个图像。图像设置了选项Stretch=“Uniform”,因此,如果主窗口的大小发生变化,则采用其高度以最佳方式填充网格列,并保持其纵横比。图像必须在柱内垂直居中 因此,上述设置导致图像顶部出现白色/空白边框。我想将左列中dataGrid的顶部与右列中自动缩放图像的顶部对齐。因此,我必须以某种方式将从上边框到上边框的图像距离数据绑定到从上边框到数据网格距离。您可能只需要在网格面板中的元素上设置V

我正在使用C#开发一个WPF应用程序。网格将应用程序分为两列。在左栏我放置了一个数据网格,在右栏我有一个图像。图像设置了选项
Stretch=“Uniform”
,因此,如果主窗口的大小发生变化,则采用其高度以最佳方式填充网格列,并保持其纵横比。图像必须在柱内垂直居中


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

您可能只需要在网格面板中的元素上设置VerticalAlignment=“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>


好,但我希望图像垂直居中。我将把这一点补充到我的问题中。因此,我必须以某种方式将从上边框到上边框的图像距离的数据绑定到从上边框到数据网格的距离。我不确定我是否理解你的问题。您可能需要进一步澄清。是什么阻止您将包含图像和数据网格的网格对齐设置为中心?然后可以将图像和数据网格垂直对齐到顶部。请记住,您始终可以将包含内容的网格放在另一个网格中。请参阅更新的代码。