
合并的單元格,變成3個單元格了 ,付合并代碼如下:
/// <summary>
/// 用于單元格合并
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void TableView_CellMerge(object sender, DevExpress.Xpf.Grid.CellMergeEventArgs e)
{
int rowHandle1 = e.RowHandle1;
int rowHandle2 = e.RowHandle2;
List<patient_item> list = gridControl_name.ItemsSource as List<patient_item>;
string id1 = list[rowHandle1].id;
string id2 = list[rowHandle2].id;
if (id1 != id2)//如果兩行的id不同,那么相同的值不需要合并
{
e.Merge = false; //值相同的2個單元格是否要合并在一起
e.Handled = true; //合并單元格是否已經處理過,無需再次進行省缺處理
}
}
uj5u.com熱心網友回復:
獲取兩行,獲取資源,從資源看著兩行的id,如果id不同則不合并。否則要合并,這最后一個否則要合并的邏輯是不是沒寫。uj5u.com熱心網友回復:
給你一段我當初寫過的合并吧。 我用的是DEV的 控制元件uj5u.com熱心網友回復:
看到了,你用的也是DEV 的 就好說了。
private void bandedGridView1_CellMerge ( object sender, DevExpress.XtraGrid.Views.Grid.CellMergeEventArgs e )
{
if (e.RowHandle1 == bandedGridView1.RowCount)
{
return;
}
int rowHandle1 = e.RowHandle1;
int rowHandle2 = e.RowHandle2;
string strValue1 = bandedGridView1.GetDataRow ( rowHandle1 )["ITEM_ID"].ToString (); //獲取分數列值
string strValue2 = bandedGridView1.GetDataRow ( rowHandle2 )["ITEM_ID"].ToString ();
if (strValue1 != strValue2)
{
e.Merge = false; //值相同的2個單元格是否要合并在一起
e.Handled = true; //合并單元格是否已經處理過,無需再次進行省缺處理
}
else
{
if (!e.Column.FieldName.Equals ( "EstimatedNum" ) && !e.Column.FieldName.Equals ( "ProjectTask" ) && !e.Column.FieldName.Equals ( "GroupUser" ) && !e.Column.FieldName.Equals ( "ClientName" )) //只對分數這一列進行合并,其他列一律不合并
{
e.Merge = false; //值相同的2個單元格是否要合并在一起
e.Handled = true; //合并單元格的操作是否已經處理過,不再需要進行省缺處理
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/31274.html
上一篇:多個DevExpress.xpf.Grid.GridControl控制元件如何匯出成excel檔案中的多sheet頁?
下一篇:chart加載不顯示
