轉(zhuǎn)帖|使用教程|編輯:龔雪|2016-06-13 09:18:01.000|閱讀 1172 次
概述:對(duì)于選擇,C1FlexGrid提供了SelectionBackground和SelectionForeground屬性,可以設(shè)置選擇的背景色和前景色。本文就在此基礎(chǔ)上擴(kuò)展,選擇行的樣式該如何設(shè)置。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
<ComponentOne Studio for WPF下載>
在之前的章節(jié)里,我們已經(jīng)討論過給單元格和選擇單元格設(shè)置顏色。對(duì)于選擇,C1FlexGrid提供了SelectionBackground和SelectionForeground屬性,可以設(shè)置選擇的背景色和前景色。本文就在此基礎(chǔ)上擴(kuò)展,選擇行的樣式該如何設(shè)置。
同樣的我們需要繼承CellFactory,并且重寫ApplyCellStyls方法。代碼參考:
flex.CellFactory = new MyCellFactory();
然后我們重寫ApplyCellStyles方法,代碼參考:
public override void ApplyCellStyles(C1FlexGrid grid, CellType cellType, CellRange range, Border bdr) { if (cellType == CellType.Cell && (grid.Rows[range.Row] as Row) != null) { Row rowExt = grid.Rows[range.Row] as Row; if (grid.Selection.Row == range.Row) { rowExt.FontWeight = FontWeights.Bold; rowExt.FontStyle = FontStyles.Italic; rowExt.FontSize = 16; rowExt.Foreground = Brushes.Gray; } else { rowExt.FontWeight = FontWeights.Normal; rowExt.FontStyle = FontStyles.Normal; rowExt.FontSize = 12; rowExt.Foreground = Brushes.Black; } } base.ApplyCellStyles(grid, cellType, range, bdr); }
在這段代碼中,我們可以看出來,我們需要通過grid拿到行,并且通過行的相關(guān)屬性來設(shè)置字體、樣式。
當(dāng)選擇的時(shí)候使用該樣式,當(dāng)不選擇的時(shí)候,恢復(fù)樣式。效果如圖:
從圖我們可以看出來,選擇到第四行的時(shí)候,選擇單元格和行都有相應(yīng)樣式的變化。
當(dāng)然,掌握了這個(gè)技巧,你可以可以對(duì)特定的行的樣式進(jìn)行設(shè)置。比如:
if (range.Row == 2) { rowExt.Background = Brushes.Pink; }
本文的示例請(qǐng)下載:
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都控件網(wǎng)