在使用DEV控件庫中的gridcontrol的分組功能時,需要給分組行加一個上邊線,將不同的組明顯的區隔開來,如下圖。
重繪分組行,可實現該需求。此處只用了 AddRowLineInfo 這個方法畫線,還有其他幾個方法,有需要的話可以繼續探索。
1 private void gridView1_CustomDrawGroupRow(object sender, DevExpress.XtraGrid.Views.Base.RowObjectCustomDrawEventArgs e) 2 { 3 GridGroupRowInfo info = e.Info as GridGroupRowInfo; 4 if (info == null) return; 5 if (info.Column.FieldName == "CLASS") //符合條件的分組行 6 { 7 GridGroupRowPainter painter = e.Painter as GridGroupRowPainter; 8 Rectangle bounds = painter.GetGroupClientBounds(info); 9 AppearanceObject appearance = new AppearanceObject(); 10 appearance.BackColor = Color.Black; 11 info.AddRowLineInfo(bounds.X, bounds.Y-2, bounds.Width, 2, appearance); 12 e.Painter.DrawObject(info); 13 } 14 }
主要參考了以下幾個鏈接:
https://www.devexpress.com/Support/Center/Question/Details/Q424679/gridview-customdrawgrouprow
https://www.cnblogs.com/wangfeng8317/p/4432151.html
https://blog.csdn.net/u011871201/article/details/70271798