使用模板列獲取批量獲取DataGrid中的資料

2021-03-31 14:43:47 字數 1319 閱讀 3577

使用模板列獲取批量獲取datagrid中的資料

在資料的管理中常常需要批量地獲取資料或者對資料進行更新刪除。使用datagrid控制項的模板列可以方便地實現這一目的。以下是我寫的乙個批量在分頁的datagrid中獲取**中資料的簡單實現思想。

test.aspx

.................................

test.aspx.cs

.................................

private void page_load(object sender, system.eventargs e)

else

lblproblem.text="資料讀取錯誤!"; }}

private ilist datasource(arraylist rarr)

return marr1;    

}private void insertfilename(string fname)

catch(exception ex)

finally

我寫這些**的目的是作乙個能批量獲取table中資料的程式。那麼實現的思想是首先將需要獲取資料的**作為datagrid的資料繫結源。通過設定datagrid的模板列在其中加入id="col"的伺服器端控制項。在執行時使用findcontrol方法獲取datagrid中相應控制項的資料。上面的程式只是針對獲取乙個控制項資料而編寫的,如果需要增加控制項的數目只要再新增乙個for迴圈就可以批量獲取二維控制項組(就是由控制項形成的二維矩陣結構,不知如何表達)的資料。而整個資料的獲取過程需要通過乙個事件的觸發而完成對所有控制項資料的掃瞄。

for(int j=0;i<10;i++)

}我認為這段程式有共通性,是指如果將其中的checkbox控制項換成其他控制項就可以獲取其他型別的資料。用checkbox控制項可以通過對整個datagrid的掃瞄獲取其中有幾行資料是checked,那麼也就可以獲取**中的資料。

若是批量更新,可以將資料繫結在各個控制項上,然後新增乙個button按鈕,使用button_click事件觸發對整個datagrid中控制項資料的掃瞄。不過這個我沒有試過。

還有就是pager的問題,其實for(int i=0;i<10;i++)中的10可以換成你pager的行數,若設定的每頁20行那麼就可以這樣設定

arraylist marr=new arraylist()

int j=dgresult.items.count;

if(dgresult.items.count==20)

j=20;   

for(int i=0;i} 

這樣就可以獲取每一頁中的具體控制項的資料,不過這樣是不能獲取其他頁面中選中的資料。

獲取data 屬性值

下面就詳細介紹四種方法獲取data 屬性的值 getid data id 122 data vice id 11 獲取id 需要獲取的就是data id和dtat vice id的值 一 getattribute 方法 const getid document.getelementbyid geti...

jquery 獲取data 屬性值

html5規定可以為元素新增非標準型的屬性,只需新增字首data 這些屬性可以隨意新增,隨意命名,目的是為元素提供與渲染無關的資訊,或提供語義資訊。getid data id 122 data vice id 11 獲取id const getid document.getelementbyid g...

jquery 獲取data 屬性值

html5規定可以為元素新增非標準型的屬性,只需新增字首data 這些屬性可以隨意新增,隨意命名,目的是為元素提供與渲染無關的資訊,或提供語義資訊。iefirefox chrome safari opera 支援支援 支援支援 支援所有主流瀏覽器都支援 data 屬性。下面就詳細介紹四種方法獲取da...