c# - 我想更改 DataGrid 选定的行高而 DataGrid 中的数据保持不变
问题描述
在选择时,我想更改 DataGrid 选定的行高。我用了两种方法。1) 我在 DataGrid 中添加了一个扩展器
<DataGrid x:Name="bookings_dg" Expander.Expanded="Expander_Expanded" IsReadOnly="True">
<DataGrid.RowHeight>30</DataGrid.RowHeight>
这是我的扩展器活动
private void Expander_Expanded(object sender, RoutedEventArgs e)
{
if (bookings_dg.RowHeight == 100)
{
bookings_dg.RowHeight = 20;
}
else
{
bookings_dg.RowHeight = 100;
}
}
它会更改所有行的大小而不是特定的行。
然后我尝试了这个它改变了高度但也扩大了其中的内容。这是我点击前后的数据网格。但我想只更改选定行的高度。在 img1 之前在 img2 之后
解决方案
您不需要使用后面的代码来执行此操作。除非您希望它看起来像放大镜,否则不要使用 Scale。
如果您只想在选择该行时增加行高,只需将触发器添加到行样式,以便在选择时增加自己的高度。
<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>
推荐阅读
- python - 将空白或空格替换为零
- php - Yii2 如何根据用户类型注销用户
- julia - ArgumentError: No key column found Unstack Error?
- javascript - 如何使用 javascript 处理启动应用程序确认框
- node.js - nodejs中引入的生成器和yield关键字是什么版本?
- python - Pandas 数据帧中的条件丰富
- java - 如何将处理器映射到 dto
- database - 在 Google Cloud Spanner 中定义具有不同外键的交错表
- polymorphism - JOOQ:如何以多态方式最好地访问列?
- c# - 来自 Web API 的响应:无法加载资源:ERR_CONNECTION_CLOSED