11 回答

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超2個(gè)贊
你這樣寫代碼是有問題的:
((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0]))
應(yīng)該是 :TextBox a=((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])) as TextBox;
?
if(a!=null){
才是textbox,否則是是哦。
}
你那個(gè)錯(cuò)誤,說明有的不是textbox,有的是System.Web.UI.WebControls.HyperLink
檢查儀下代碼

TA貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超6個(gè)贊
不懂? 我就是要將GridView里面的數(shù)據(jù)更新到數(shù)據(jù)庫? 還請(qǐng)你直接教教我怎么做吧

TA貢獻(xiàn)1719條經(jīng)驗(yàn) 獲得超6個(gè)贊
@無限遐想:?網(wǎng)上都是一律的,對(duì)我也沒有作用,網(wǎng)上的說的GridView里面都沒有HyperLink字段,所以可以轉(zhuǎn)!

TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超21個(gè)贊
@古鎮(zhèn)的廢墟:?GridView裏面的內(nèi)容,是你自己定義的。如果你全部定義textbox ,那麼你的那個(gè)可以運(yùn)行正確。

TA貢獻(xiàn)1895條經(jīng)驗(yàn) 獲得超3個(gè)贊
為什么要自己寫代碼呢?gridview本身就自帶新增,編輯,刪除功能啊?不設(shè)計(jì)界面3分鐘就搞定了.1L已經(jīng)說得很明白了,你把控件都轉(zhuǎn)成Textbox去讀取它的值不錯(cuò),關(guān)鍵是你里面某一列是個(gè)HyperLink(超鏈接應(yīng)該知道吧?),系統(tǒng)轉(zhuǎn)不了TEXTBOX

TA貢獻(xiàn)1909條經(jīng)驗(yàn) 獲得超7個(gè)贊
嗯? 就是提示這一列不能轉(zhuǎn)換?。∧俏乙碌綌?shù)據(jù)庫怎么辦呢?自帶的功能根本不好用,好多報(bào)錯(cuò)。還麻煩您給點(diǎn)意見

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超3個(gè)贊
你UI的代碼是怎樣的,是用的模板列嗎?如果是的,請(qǐng)參照下面的方法
例如:這一行的第一列的某個(gè)文本框的ID為txtTest,在更新這一行的時(shí)候獲取txtTest的值的代碼為
((TextBox)GridView1.Rows[e.RowIndex].FindControl("txtTest")).Text.Trim();
或者
((TextBox)GridView1.Rows[e.RowIndex].Cells[0].FindControl("txtTest")).Text.Trim();
可以不定位到單元格的,因?yàn)槿绻诤笃冢阆朐谶@一列之前加上一列,那么你的列索引就要變了。
- 11 回答
- 0 關(guān)注
- 554 瀏覽
添加回答
舉報(bào)