回复 13楼Alice的帖子
非常感谢
我在版主发的例子里只是 在后面陆续加了几列
- <c1:DataGridTextColumn Header="[产量, 总产量, 平米]" />
- <c1:DataGridTextColumn Header="[产量, 总产量, 米]" />
- <c1:DataGridTextColumn Header="[产量, 折算产量, 折算产量]" />
- <c1:DataGridTextColumn Header="[达标率, 达标率, 达标率]" />
复制代码
后面又不能合并了
我试着调节
_headerRowColumns = grid.Columns.Take(3).ToArray();
这里的3的数值,增大到一定程度,可以合并,但冻结列又有问题,拖拉也有问题
我修改成这样:
- C1.WPF.DataGrid.DataGridRow[] _headerColumnRows;
- C1.WPF.DataGrid.DataGridColumn[] _headerRowColumns;
- C1.WPF.DataGrid.DataGridColumn[] _headerRow;
- public FirstYieldStatementNew()
- {
- InitializeComponent();
- // save headers rows and columns for later
- _headerRowColumns = grid.Columns.Take(3).ToArray();
- _headerRow = grid.Columns.ToArray();
- _headerColumnRows = grid.TopRows.Take(3).ToArray();
- // forbid unfreezing headers
- grid.FrozenColumnCountChanged += delegate
- {
- if (grid.FrozenColumnCount < _headerRowColumns.Length)
- grid.FrozenColumnCount = _headerRowColumns.Length;
- };
复制代码
在merge的时候用_headerRow ,应该可以解决问题了
顺便问下,<c1ataGridAggregateAvg ResultFormat=" {0:p1} "></c1ataGridAggregateAvg> 这里我想格式化百分比,应 如何写呢?
我看到在别的帖子里有问道:
用TopRows实现多行列头后,怎样使它列头的内容实现回车换行显示。
版主回答是:
可以设置列的TextWrapping属性为Wrap,并且RowHeight为Auto。
但我这样设定了,标题还是没有自动换行 |