在我的gridview(devexpress)中有一些空单元格和一些非空单元格。合并单元格时,合并空单元格和非空单元格。
但我想只合并非空的单元格。我希望空单元格正常显示(未合并)。 感谢。
private void gridView2_CellMerge(object sender, CellMergeEventArgs e)
{
if (e.Column.FieldName == "Aktivite")
{
var value1 = gridView2.GetRowCellValue(e.RowHandle1, e.Column).ToString();
var value2 = gridView2.GetRowCellValue(e.RowHandle2, e.Column).ToString();
if (value1 == value2 && (!String.IsNullOrEmpty(value1) && !String.IsNullOrEmpty(value2)))
{
e.Merge = true;
e.Handled = true;
}
}
}
答案 0 :(得分:0)
我想你忘记了if的其他链条。尝试按如下方式更改代码:
e.Merge = value1 == value2 && (!String.IsNullOrEmpty(value1) && !String.IsNullOrEmpty(value2));
e.Handled = true;
这有帮助吗?
答案 1 :(得分:0)
当单元格不为空时处理事件。但你需要做相反的事情。当单元格为空时,您需要处理事件:
private void gridView2_CellMerge(object sender, CellMergeEventArgs e)
{
if (e.Column.FieldName == "Aktivite")
{
var value1 = gridView2.GetRowCellValue(e.RowHandle1, e.Column).ToString();
var value2 = gridView2.GetRowCellValue(e.RowHandle2, e.Column).ToString();
if (String.IsNullOrEmpty(value1) && String.IsNullOrEmpty(value2))
{
e.Merge = false;
e.Handled = true;
}
}
}