c1:C1DataGrid里的如何做到选中单一单元格的效果同时也需要有选中当前行的效果?
c1:C1DataGrid里的如何做到选中单一单元格的效果同时也需要有选中当前行的效果? 回复 1楼CanYou2的帖子谢谢您的反馈。
目前是没有提供同时选择行和单元格的能力。
为了帮助您解决问题,想了解下进一步的需求,看看有没有解决方案可以提供给您。
如果选中单元格的时候,不会选中行,仅仅是有个行的背景色效果可以不? 我解释一下我们具体的需求,在一个内容比较多的datagrid的内容,多行多列,内容密集。我们现在还是选择单个单元格,整个行都有颜色的更改。现在我们客户要求我们加上单元格内容可以复制的功能,功能我们已经加上了,但是问题来了,很难分辨清楚究竟选择的是哪个单元格,所以昨天提了那个要求。如果有其他的办法解决这个问题也可以试试。 回复 3楼CanYou2的帖子
我想知道您的SelectionMode 是行选还是Cell单元格选择?就是说我能拿到的选择是单元格,还是一行?
如果是单元格选择,通过SelectedBackgroud属性可以给选择的单元格改变颜色。
如果是行选,那么通过LoadedCellPresenter事件里,可以通过e.Cell.Presenter.Background给任意的单元格设置特殊的颜色。 回复 4楼Alice的帖子
不要非得同时选中行和单元格啊,只是选中单元格时要用明显的颜色标出,同时这行的背景色不要变。他是UI工程师,不知如何写后台代码。请问如何在样式里设置? 回复 5楼CanYou1的帖子
您好。
通过4楼所说的方法,c1datagrid已经暴露了SelectedBackgroud属性可以设置选择的颜色(可以在XAML或是代码设置)。
或是通过LoadedCellPresenter事件。
如果想通过XAML的CellStyle,可以拿到DataGridCellPresenter来设置Selected颜色。
一些思路:
<c1:C1DataGrid.CellStyle>
<Style TargetType="c1:DataGridCellPresenter">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="c1:DataGridCellPresenter">
<Grid>
//重写selected cell的背景色
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</c1:C1DataGrid.CellStyle> 原生的DataGrid有个SelectionUnit="Cell"可以实现效果,但是C1DataGrid没有这个属性,请问可以有其他属性代替的吗?按上面的方法没有实现效果 回复 7楼CanYou2的帖子
我通过6楼提到的样式的方法,写了一个Demo。
演示行和单元格都有选择的效果,详细的请查看示例:
页:
[1]