台灣最大程式設計社群網站
線上人數
1195
 
會員總數:243449
討論主題:188175
歡迎您免費加入會員
討論區列表 >> C# >> datagridview取值問題
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
datagridview取值問題
價值 : 200 QP  點閱數:173 回應數:3

樓主

studycode
門外漢
0 35
1359 70
發送站內信

c#的datagridview要顯示sql查詢結果,我是用下列程式:


後續程式要取name的值是用dataGridView1.Rows[i].Cells[1],
要取rem的值是用dataGridView1.Rows[i].Cells[2],
如果我要datagridview1顯示的第二欄新增company資料,
取值就很麻煩,在第二欄以後的欄位值,Cells[idx]的idx全都要往後順延加1,
我現在正在寫一個程式,他顯示的欄位有40幾個,
想到日後若有要新增或刪除欄位,要改很多Cells[idx]的idx,
難保不會改錯或漏改,欄位這麼多,還要全部重新檢查是否資料都正確。

請問是否有更好的辦法解決這種麻煩呢??

搜尋相關Tags的文章: [ sqlDataReader ] , [ c# ] , [ cell ] ,
本篇文章發表於2018-10-22 10:45
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
最有價值解答

春天
檢舉此回應
index要順延+1的問題



或是你可以用String當索引(跟DB中Column的名稱一樣)
string naem = dataGridView1.Rows[i].Cells["name"].ToString();
假設若有新增city欄位,原本的程式碼都不用修改,只需增加
string city = dataGridView1.Rows[i].Cells["city"].ToString();

最後不建議把資料放進DataGridView再來處理,DataGridView會有很多額外UI方面的開銷
本篇文章回覆於2018-10-23 09:31
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

studycode
檢舉此回應
原來Cells的索引可以文字!!之前不知怎麼試的就是一直不行,可能我用法錯誤!
現在ok了!!

*「最後不建議把資料放進DataGridView再來處理,DataGridView會有很多額外UI方面的開銷」
==> 因為user的需求,DataGridView 需某欄位可輸入,輸入完要同步將其他欄位的值更新,所以這是我目前所能想到的方式><

感謝!!
本篇文章回覆於2018-10-23 10:24
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
作者回應

studycode
檢舉此回應
對了,我取值是 string naem = dataGridView1.Rows[i].Cells["name"].Value.ToString();
本篇文章回覆於2018-10-23 10:25
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.