在使用C#進(jìn)行界面設(shè)計(jì)的過(guò)程中,用到了datagridview控件,該控件其實(shí)很靈活,對(duì)于圖表形式的
為南崗等地區(qū)用戶(hù)提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及南崗網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都做網(wǎng)站、網(wǎng)站建設(shè)、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè)、南崗網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專(zhuān)業(yè)、用心的態(tài)度為用戶(hù)提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶(hù)的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
顯示非常實(shí)用有效。
數(shù)據(jù)源比較靈活,一般其可以和databinding控件一起使用。數(shù)據(jù)源可是從數(shù)據(jù)庫(kù)中獲得數(shù)據(jù),或從ArrayList中取得,也可以通過(guò)excel等文檔的形式取得。
顯示的樣式很多,有很多可以選擇調(diào)整的屬性。例如行頭是否顯示,表列名如何顯示等。
行為動(dòng)作很多,可以觸發(fā)的事件很多。
上面這些在控件上點(diǎn)擊右鍵屬性都是可以看見(jiàn)的,不過(guò)多進(jìn)行敘述。
這里想說(shuō)一個(gè)遇到的挺有意思的問(wèn)題。
在進(jìn)行表格顯示的時(shí)候我想把某些行的顏色進(jìn)行改變,所以在datagridview進(jìn)行數(shù)據(jù)綁定之后使用了如下語(yǔ)句:
datagridview1.Rows[i].DefaultCellStyle.BackColor = System.Drawing.Color.Gray;
意圖是想把某一行設(shè)為灰色,但是顯示出來(lái)的時(shí)候并沒(méi)有生效,試了一下
datagridview1.DefaultCellStyle.BackColor = System.Drawing.Color.Gray;
把整個(gè)grid都設(shè)置為灰色了,發(fā)現(xiàn)這樣是可以生效的。
為什么在初始化datagridview控件的數(shù)據(jù)源之后讓某行變色不行呢,我猜想了一下可能是由于初始化完數(shù)據(jù),設(shè)定完顯示樣式之后,顯示形式又被自動(dòng)刷了一次。
實(shí)現(xiàn)了一下cellclick事件,處理動(dòng)作就是讓點(diǎn)擊的那行變色,發(fā)現(xiàn)單行變色是好使的,可以執(zhí)行的。
目前為什么在初始化的時(shí)候不好用還沒(méi)有搞清楚,我的做法是響應(yīng)DataBindingComplete事件,在數(shù)據(jù)綁定完之后再進(jìn)行表格樣式的設(shè)定,結(jié)果達(dá)到了預(yù)期效果,但是這只是一個(gè)臨時(shí)的替代方案,不是根本的原因,找到為什么不能在初始化時(shí)設(shè)置格式才是根本。