日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

关于C# Winform DataGridView 设置DefaultCellStyle无效的原因与解决方案

發布時間:2024/9/20 C# 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于C# Winform DataGridView 设置DefaultCellStyle无效的原因与解决方案 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

上周在開發Winform 項目中,我曾遇到一個看似簡單,但一直都沒有解決的問題,那就是:設置winform DataGridView控件的行DefaultCellStyle,但卻沒有任何變化,我也曾求助于博問:http://q.cnblogs.com/q/72294/,但大家給的答案沒有一個能解決這個問題,可能是問題重現不太容易,我自己也曾多次在其它項目中嘗試重現這個問題,但一直都是正確的,沒有出現我當前項目的問題,簡直要崩潰啊!

先來看看我原有的代碼:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 private?void?Form1_Load(object?sender, EventArgs e) { ????dataGridView1.SetHeader<Zwj.TEMS.Entities.AssetDetail>(t => t.AssetSingleNo, t => t.BaseInfo.Name, t => t.BaseInfo.Category.CategoryName, ????????????????t => t.Price, t => t.ProcureImport.Date, t => t.State.State); ????LoadData(); } private?void?LoadData() { ????var?resultList = QueryBusiness<ProcureExport>.GetList(t =>true,//這里演示就直接忽略條件 ?????????????????????????????????t =>?new ?????????????????????????????????{ ?????????????????????????????????????t.AssetSingleNo, ?????????????????????????????????????t.AssetSingleInfo.BaseInfo.Name, ?????????????????????????????????????t.AssetSingleInfo.BaseInfo.Category.CategoryName, ?????????????????????????????????????t.AssetSingleInfo.Price, ?????????????????????????????????????t.AssetSingleInfo.ProcureImport.Date, ?????????????????????????????????????t.AssetSingleInfo.State.State ?????????????????????????????????},t =>t.AssetSingleNo,1,10); ????dataGridView1.DataSource = resultList; ????int?entityInListIndex = 1; ????dataGridView1.Rows[entityInListIndex].DefaultCellStyle =?new?DataGridViewCellStyle() { ForeColor = Color.Blue, Font =?new?Font("Arial", 11F, FontStyle.Bold) }; }

最終呈現的效果如下:

從上面的表格中可以看出,第2行(索引為1,實際為第2行)沒有任何效果。當然如果你將這些代碼及表格復制到其它項目中,可能不會出現這樣的問題,這就是很煩人的事情。為了解決這個簡單問題,搞清楚原因,今天一上班,我又開始進行測試與繼續在網上找答案,終于功夫不負有心人,終于在微軟的社區中發現有人也提到這樣的問題,并解決了,地址是:https://social.microsoft.com/Forums/zh-CN/d928e42d-9e10-4b1a-b2ee-2694894f47af/datagridview?forum=visualcshartzhchs,這里面提到:

重新把所有綁定的數據在顯示一遍,這里有一點延時,導致顏色其實沒有設置到正確顯示的row上。在DatabindingCompleted 時間里面,確保所有的數據 都已經綁定完成,這時候 能夠確保 設置在正確的 行上面。

問題原因找到了,原來是綁定后,數據有延遲,必須確認數據綁定完成后,才能進行樣式設置,基于這個原因,我修正了一下代碼,將原設置Style的代碼放到DataBindingComplete事件中,如下:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 private?void?Form1_Load(object?sender, EventArgs e) { ????dataGridView1.SetHeader<Zwj.TEMS.Entities.AssetDetail>(t => t.AssetSingleNo, t => t.BaseInfo.Name, t => t.BaseInfo.Category.CategoryName, ????????????????t => t.Price, t => t.ProcureImport.Date, t => t.State.State); ????dataGridView1.DataBindingComplete +=?new?DataGridViewBindingCompleteEventHandler(dataGridView1_DataBindingComplete); ????LoadData(); } private?void?LoadData() { ????var?resultList = QueryBusiness<ProcureExport>.GetList(t =>true,//這里演示就直接忽略條件 ?????????????????????????????????t =>?new ?????????????????????????????????{ ?????????????????????????????????????t.AssetSingleNo, ?????????????????????????????????????t.AssetSingleInfo.BaseInfo.Name, ?????????????????????????????????????t.AssetSingleInfo.BaseInfo.Category.CategoryName, ?????????????????????????????????????t.AssetSingleInfo.Price, ?????????????????????????????????????t.AssetSingleInfo.ProcureImport.Date, ?????????????????????????????????????t.AssetSingleInfo.State.State ?????????????????????????????????},t =>t.AssetSingleNo,1,10); ????dataGridView1.DataSource = resultList;??????????? } private?void?dataGridView1_DataBindingComplete(object?sender, DataGridViewBindingCompleteEventArgs e) { ????int?entityInListIndex = 1; ????dataGridView1.Rows[entityInListIndex].DefaultCellStyle =?new?DataGridViewCellStyle() { ForeColor = Color.Blue, Font =?new?Font("Arial", 11F, FontStyle.Bold) }; }

效果如下:

問題終于解決了,雖然是一個小問題,但若不明白原理及找到問題根源,小問題也會變成大問題,所以從這個問題中告誡我自己及大家:不要輕視任何一個問題,要有刨根問底的決心,每一個問題都要找到根本原因,不僅要知道如何做,還要明白為什么要這樣做,這樣才會成長。

總結

以上是生活随笔為你收集整理的关于C# Winform DataGridView 设置DefaultCellStyle无效的原因与解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 综合久| 操欧美老逼| 国产尤物网站 | 一边摸一边做爽的视频17国产 | 一级特黄aa大片 | 96精品视频 | 欧美成人一区在线观看 | 欧美v亚洲| 老女人做爰全过程免费的视频 | 特黄做受又粗又大又硬老头 | 一区二区三区四区av | 国产成人精品影院 | 日本特级黄色片 | 日韩精品色呦呦 | 亚洲av久久久噜噜噜噜 | 九九天堂网 | 最新自拍偷拍 | 青青青国产在线 | 三年中国片在线高清观看 | 欧美人成在线视频 | 欧美色涩 | 日本三级午夜理伦三级三 | 在线视频 中文字幕 | 欧美成年人视频 | 东京热一区二区三区四区 | 免费一区二区三区视频在线 | 亚洲午夜精品在线 | 亚洲天堂手机在线观看 | 中文字幕一区二区三区四区欧美 | 久久国产色av免费观看 | 一区www | 日韩视频一区在线 | 日韩欧美精品中文字幕 | 国产美女无遮挡免费视频 | 女av在线 | 成年人免费视频网站 | 播金莲一级淫片aaaaaaa | 国产色婷婷一区二区三区竹菊影视 | 99re这里只有精品在线 | 福利在线影院 | 中文字幕一区二区三区久久久 | 在线观看www. | 蜜芽久久 | 在线国产精品一区 | 粉嫩aⅴ一区二区三区 | 国产精品日韩电影 | 农村妇女一区二区 | 一级片亚洲 | 欧美性受xxxxx| 按摩害羞主妇中文字幕 | 在线成人国产 | 婷婷成人av| 亚洲人成人网 | 国产精品白嫩极品美女 | 成人做爰69片免费看 | 国产性猛交96 | 国产一区二区三区在线观看 | 欧美50p | 久久艹国产精品 | 精品久久精品久久 | 黑人玩弄人妻一区二区三区免费看 | www.69av.com| 高清在线一区二区 | 五月av| 五月天综合网站 | 人妻少妇被粗大爽9797pw | 久久精品国产亚洲a | 日批网站在线观看 | 光明影院手机版在线观看免费 | a天堂中文网 | 久久不射网 | 欧美黑人又粗又大高潮喷水 | 四虎福利视频 | 美女免费看片 | 午夜性色福利影院 | www亚洲视频 | 国产精品国产三级国产普通话蜜臀 | 欧美大喷水吹潮合集在线观看 | 可以免费看的毛片 | 蜜臀国产AV天堂久久无码蜜臀 | 97免费在线观看视频 | a级片免费在线观看 | 老汉av在线 | 日韩一区二区三区在线 | 和漂亮岳做爰3中文字幕 | 欧美日韩日本国产 | 91日本在线 | 91精品亚洲 | 亚洲丝袜天堂 | 国产精品16p| 最新在线中文字幕 | 91一区二区在线观看 | juliaann办公室丝袜大战 | 日韩影院在线 | 亚洲13p | 宇都宫紫苑在线播放 | 蜜臀av夜夜澡人人爽人人 | 国产成人97精品免费看片 | 深夜的私人秘书 |