Asp.Net GridView 在編輯狀態中使用動態Dropdownlist方法
阿新 • • 發佈:2019-02-18
方法是半百度來的,但是這個方法很難再網路上找到,大部分網站搜尋出來都有很多問題.
首先鄙視下Gridview.FindControl("Id")方法,真的很難用啊! (我知道必須在行裡面找{e.Row.FindControl("Id")});
沒有詳細的研究,但是測試了半天了,總算出來了.
方案1:
Gridview的RowCreated事件繫結資料!
不能使用Gridview的RowCreated事件,會報錯說 資料繫結必須在資料繫結事件中進行!
方案2:
Dropdownlist的DataBinding事件繫結資料!
萬惡的Gridview.FindControl,和DataRow.FindControl都無法找到編輯
方案3:
Gridview的RowDataBound事件繫結資料!
絕對不行!在這個事件以前,Dropdownlist要被賦Gridview當前編輯項的值,但是Dropdownlist這個時候是空的,報錯找不到SelectedValue
總結上面方法 花了大半天時間....哎!!!
下面是研究的方法(方法算是半百度)
(把GridView的列轉換為)
為 Dropdownlist 指定 DataTextField="資料來源中的列" DataValueField="資料來源中的列" DataSource="<%# 定義在.cs檔案中的DataSet DataTable資料來源 可以是方法
例子:
Ok 解決以上所有的問題