翻譯|使用教程|編輯:龔雪|2021-04-26 10:19:16.093|閱讀 392 次
概述:本文將為大家介紹數(shù)據(jù)網(wǎng)格如何將自定義單元格顏色從RowCellStyle事件傳遞到編輯表單。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
DevExpress WinForms擁有180+組件和UI庫(kù),能為Windows Forms平臺(tái)創(chuàng)建具有影響力的業(yè)務(wù)解決方案。DevExpress WinForms能完美構(gòu)建流暢、美觀且易于使用的應(yīng)用程序,無(wú)論是Office風(fēng)格的界面,還是分析處理大批量的業(yè)務(wù)數(shù)據(jù),它都能輕松勝任!
假設(shè)在GridView中動(dòng)態(tài)更改RowCell的顏色:
C#
private void GridView_RowCellStyle(object sender, RowCellStyleEventArgs e) { // ... some logic e.Appearance.BackColor = Color.FromArgb(98, 182, 204, 252); // ... other logic }
需要在相應(yīng)的編輯表單控件中使用相同的BackColor。有必要使用EditFormPrepared事件并更改e.BindableControls [column] .BackColor屬性,但我想了解如何獲取列樣式。
任務(wù)是獲取相應(yīng)列單元格的顏色,建議創(chuàng)建一個(gè)方法,該方法實(shí)現(xiàn)RowCellStyle邏輯來(lái)計(jì)算單元格顏色并將其在EditFormPrepared事件處理程序中使用。下面的代碼說(shuō)明了此方法:
C#
private void GridView1_EditFormPrepared(object sender, EditFormPreparedEventArgs e) { GridView view = sender as GridView; foreach (GridColumn c in view.VisibleColumns) { e.BindableControls[c].BackColor = GetColor(c, e.RowHandle, view.GetRowCellValue(e.RowHandle, c)); } } private void GridView1_RowCellStyle(object sender, RowCellStyleEventArgs e) { e.Appearance.BackColor = GetColor(e.Column, e.RowHandle, e.CellValue); } Color GetColor(GridColumn column, int rowHandle, object value) { if (rowHandle != 0) return Color.Empty; //your logic if (column.FieldName == "Name") return Color.Green; return Color.Red; }
DevExpress技術(shù)交流群3:700924826 歡迎一起進(jìn)群討論
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都網(wǎng)