C# 我想在DataGrid中的数据保持不变的情况下更改DataGrid选定的行高度

C# 我想在DataGrid中的数据保持不变的情况下更改DataGrid选定的行高度,c#,datagrid,wpf-controls,wpfdatagrid,wpftoolkit,C#,Datagrid,Wpf Controls,Wpfdatagrid,Wpftoolkit,在选择时,我想更改DataGrid选定的行高度。我用了两种方法。1) 我在DataGrid中添加了一个扩展器 <DataGrid x:Name="bookings_dg" Expander.Expanded="Expander_Expanded" IsReadOnly="True"> <DataGrid.RowHeight>30</DataGrid.RowHeight> 它更改所有行的大小,而不是特定行的大小 然后我试着改变它的高度,但也

在选择时,我想更改DataGrid选定的行高度。我用了两种方法。1) 我在DataGrid中添加了一个扩展器

<DataGrid x:Name="bookings_dg"  Expander.Expanded="Expander_Expanded"  IsReadOnly="True">
        <DataGrid.RowHeight>30</DataGrid.RowHeight>
它更改所有行的大小,而不是特定行的大小

然后我试着改变它的高度,但也扩大了它的内容。
这是我的datagrid在单击之前和之后。但我只想更改选定行的高度。

您不需要在代码隐藏的情况下执行此操作。不要使用天平,除非你想让它看起来像放大镜

如果您只想在选中该行时增加行高度,只需向行样式添加一个触发器,以便在选中该行时增加其自身的高度

<DataGrid Name="bookings_dg" IsReadOnly="True">
    <DataGrid.RowStyle>
        <Style TargetType="DataGridRow">
            <Setter Property="Height" Value="30"/>
            <Style.Triggers>   
                <Trigger Property="IsSelected" Value="True">
                    <Setter Property="Height" Value="50"/>
                </Trigger>
            </Style.Triggers>
        </Style>
    </DataGrid.RowStyle>
</DataGrid>


非常感谢您的回复,其中存在一个问题,即它只增加了行高度,但没有增加其中的单元格高度。这对我来说是这样的。如果在单元格上设置背景色或边框,它将填充整行。文本保持与左上角位置对齐,但这是因为DataGridCell内部正在使用TextBlock来显示文本。这就是你的意思吗?实际上我想增加放置在行内的texBlock的高度。
<DataGrid Name="bookings_dg" IsReadOnly="True">
    <DataGrid.RowStyle>
        <Style TargetType="DataGridRow">
            <Setter Property="Height" Value="30"/>
            <Style.Triggers>   
                <Trigger Property="IsSelected" Value="True">
                    <Setter Property="Height" Value="50"/>
                </Trigger>
            </Style.Triggers>
        </Style>
    </DataGrid.RowStyle>
</DataGrid>