日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

為GridView新增記錄的功能_.Net教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:淺析.Net Micro Framework 4.0正式開源
從今年開始5月份,微軟就已宣布.Net Micro Framework將開源,目前這一承諾已兌現,現在源碼代碼已經可以從官方網站上進行下載了。并且.Net Micro Framework部門也已經從研究院轉移到產品部門中來,.Net Micro Framework正式成為.Net 產品家族中的一員。 下載

   在 ASP.NET 2.0 中,GridView 支持修改/刪除記錄,但卻不支持新增記錄的功能,大多數人建議用 FormView 來完成增加記錄的功能,但是 FormView 和 GridView 不是同一個表格,所以無法在同一個頁面的同一個表格中顯示。如果故意將 FormView 或自己的一堆于用新增功能的控件使用普通的表格組裝起來,那么會碰到一個很麻煩的問題,即兩個表格的列寬如何協(xié)調一致,大多數情況下,大家在做表格的時候,表格中各列的寬度都是自動調整的,所以強行指定寬度在很多情況下并不適用。  
通過實踐,想出了一種辦法,主要步驟如下所示:
1) 在 GridView 的 EmptyDataView 中,放置一個普通的Html Table,以便在無數據時依舊顯示表頭,假設 ID 為 tbHeader,為下面用于新增功能的 Form 的各個控件提供說明; 

2) 在 GridView 下面,放置一個普通的 HTML 表格,列數和 GridView保持一致,只有一行,內部放入用于新增功能的各個控件,假設 ID 為 tbForm 

3) 在客戶端中加入腳本,在頁面顯示到客戶端時,利用 Javascript 將兩個表格強行合并到一起,這樣就會在 GridView 的最下面多出一行,其中有輸入控件和“添加”鏈接(按鈕),主要代碼如下: 

  

function MergeTable(source,dest){    var row;    var cell;    var sourceTb = document.all(source);    var destTb = document.all(dest);    for (var i=0; i<sourceTb.rows.length; i++)    {         row = document.createElement("TR");         for (var j=0; j<sourceTb.rows(i).cells.length; j++)         {             cell = document.createElement("TD");             row.appendChild(cell);            //復制對象            for(k=0;k<sourceTb.rows(i).cells(j).all.length;k++)                cell.appendChild(sourceTb.rows(i).cells(j).all.item(k));        }        destTb.tBodies(0).appendChild(row);    }    for (var i=sourceTb.rows.length-1; i>=0; i--)    {        sourceTb.deleteRow(i)    }}    注意:要根據表格中是否具有數據來合并不同的表格,如果沒有數據,要合并 EmptyDataView 中的 Html Table (即 tbHeader)與用于新增的表格(tbForm),如果有數據,則要合并 GridView 本身(可以用 GridView.ClientID來獲取其客戶端 ID)和用于新增加的表格(tbForm)。簡單的做法是檢查頁面中有沒有 tbHeader 以確定表格中是否包含數據,代碼如下所示: 

function ChangeTableLayout() 

     if(document.all(’tbHeader’) == null) 
        MergeTable(’tbForm’,’<%=myGridView.ClientID %>’); 
    else 
        MergeTable(’tbForm’,’tbHeader’); 


    4) 如果是 AJAX 環(huán)境,上述腳本有可能不被執(zhí)行,可以調用 Sys.Application.load.add ( JavaScriptFunction) 來強制執(zhí)行腳本,來合并表格,主要代碼如下: 

scriptmanager myScriptManager = ScriptManager.GetCurrent(Page); 
if (myScriptManager.IsInPartialRenderingMode) 

    Page.ClientScript.RegisterStartupScript(this.GetType(), "ShowFullTable1", "ChangeTableLayout();\n", true); 

else 

    Page.ClientScript.RegisterStartupScript(this.GetType(), "ShowFullTable2", "Sys.Application.load.add (ChangeTableLayout);\n", true); 


    注:上述代碼中的 ChangeTableLayout 為客戶端腳本函數的名稱,其中調用第3步驟中的代碼,上述代碼在 Atlas 中通過,在 ASP.NET AJAX Beta 上尚末測試。 


分享:淺析電子商務的框架
前些陣子照著《Pro ASP.NET 2.0 E-Commerce in C#2005》書編輯了一個商務系統(tǒng)網站,想總結一下學習到的所學的知識。 該網站具有一般商務網站的特征 這里先講講他的框架 數據訪問層 用的的存儲過程操作數據庫的存儲,有一個Shop.DataAccess類庫專門(注意我這

來源:模板無憂//所屬分類:.Net教程/更新時間:2012-06-29
相關.Net教程