zheng.xiang 发表于 2017-8-11 09:51:04

DataGrid合并表头问题

本帖最后由 zheng.xiang 于 2017-9-27 14:06 编辑

为了实现复合表头,将DG原表头隐藏

追加了两行头

<c1:C1DataGrid.TopRows>
                  <c1:DataGridColumnHeaderRow/>
                  <c1:DataGridColumnHeaderRow />
</c1:C1DataGrid.TopRows>

在后台进行合并

e.Merge(new DataGridCellsRange(dg1.GetCell(0, 4), dg1.GetCell(0, 5)));

需要合并的列没有问题,在不需要合并的列里出问题了

第一列是全选列
<c1:DataGridCheckBoxColumn Binding="{Binding CRE_USER_ID}" Width="95">
                        <c1:DataGridCheckBoxColumn.Header>
                            <StackPanel Orientation="Horizontal" HorizontalAlignment="Left" Width="68">
                              <TextBlock Margin="6,0,6,0" VerticalAlignment="Center" Text="全選択"/>
                              <CheckBox HorizontalAlignment="Left" IsHitTestVisible="True" VerticalAlignment="Center" Checked="CheckBox_Checked"                     Unchecked="CheckBox_Checked" />
                            </StackPanel>
                        </c1:DataGridCheckBoxColumn.Header>
                  </c1:DataGridCheckBoxColumn>

增加两列表头后,这个全选列头,出现在第二行里,而不是第一行

对这一列进行合并后
全选checkbox 这一列的Header,运行时,偶尔出现,偶尔不出现,

能否限定全选列增加到第一行

-------------
关于这个问题,我把<TextBlock Margin="6,0,6,0" VerticalAlignment="Center" Text="全選択"/>
                              <CheckBox HorizontalAlignment="Left" IsHitTestVisible="True" VerticalAlignment="Center" Checked="CheckBox_Checked"                     Unchecked="CheckBox_Checked" />
从dataGrid里拿出去了,放到上层的StackPanel里了


现在效果是这样,显示效果是没问题的。

只是实际上,这个checkbox是重叠在GRID上的。

不过,只要DATAGRID的位置是不可拖动的,这样倒是也行。{:2_28:}



zheng.xiang 发表于 2017-8-11 10:08:41

demo

JeffryLI 发表于 2017-8-11 10:36:03

zheng.xiang 发表于 2017-8-11 10:08
demo

您好:demo我收到了,我确认下,给您回复。

zheng.xiang 发表于 2017-9-1 15:40:22

这个还没有结果吗?

JeffryLI 发表于 2017-9-1 17:42:11

zheng.xiang 发表于 2017-9-1 15:40
这个还没有结果吗?

您好,可能会先发一个hotfix的版本,但是这个没经过严格测试了,我也和任工说了,这个问题会在下一个正式版中解决,大概在11月份。他说也行。

zheng.xiang 发表于 2017-9-7 13:10:39

好的,多谢

JeffryLI 发表于 2017-9-7 13:33:07

zheng.xiang 发表于 2017-9-7 13:10
好的,多谢

客气了。
页: [1]
查看完整版本: DataGrid合并表头问题