熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

ASP.NET數據綁定控件比較淺析

2013-11-13 10:21:28  來源: .NET編程 

  ASPNET數據控件之數據綁定控件比較(Reapter\DataList\GridView\DatailsView\FormView)都有哪些方面呢?讓我們開始講解

  ASPNET數據控件之數據綁定控件比較插入功能方面:

  DetailsView和FormView具有插入功能其它控件沒有

  ASPNET數據控件之數據綁定控件比較模板

  DataList\FormView\Repeater三種必須編輯模板

  GridView和DetailsView只有在將列轉換成模板列以後才會出現各種模板

  ASPNET數據控件之數據綁定控件比較自動分頁功能

  GridView DetailsView和FormView都是版本新增控件內置了分頁排序等等功能

  其他需要手工定義

  ASPNET數據控件之數據綁定控件比較數據呈現方式:

  GridViewDataListRepeator用於呈現多列數據

  DetailsViewFormView用於呈現單列數據即常用的數據明細

  DataList和Reapter都需要編輯模板列而在模板列當中可以添加TextBox同時可以指定TextBox的ID從而實現提取用戶輸入的值但是DataGrid和GridView兩個件是不需要編輯模板的它的編輯功能是自動生成的我們無法知道那些文本框的ID也就無法通過ID來獲取用戶的輸入那麼可以通過對單元格的引用來實現:

  


    private void DataGrid_UpdateCommand(object sourcexx)  
    {  
        string bkid=DataGridDataKeys[eItemItemIndex]toString();//提取主鍵  
        string bktitle=((TextBox)eItemCells[]Controls[])Text;//提取用戶的輸入  

  ASPNET數據綁定控件實際區別一進入編輯狀態

  


    DataListEditItemIndex = eItemItemIndex;  
    DataGridEditItemIndex = eItemItemIndex;  
    GridViewEditIndex = eNewEditIndex;  
    DetailsViewChangeMode(DetailsViewModeEdit);//進入編輯狀態  
    DetailsViewChangeMode(DetailsViewModeReadOnly);//退出編輯狀態 

  ASPNET數據綁定控件實際區別二設置主鍵:

  


    DataListDataKeyField = bkid;  
    DataGridDataKeyField = bkid;  
     
    string[] str={bkid};  
    GridViewDataKeyNames = str; 

  ASPNET數據綁定控件實際區別三提取主鍵

  


    string bkid = DataListDataKeys[eItemItemIndex]ToString();//DataList  
    string bkid = DataGridDataKeys[eItemItemIndex]ToString();//DataGrid  
    string bkid = GridViewDataKeys[eRowIndex]ValueToString();//GridView  
    string bkid = DetailsViewDataKey[]ToString(); 

  ASPNET數據綁定控件實際區別四查找控件

  


    string bktitle = ((TextBox)eItemFindControl(txtTile))Text;//DataList  
    string bktitle = ((TextBox)eItemCells[]Controls[])Text;//DataGrid  
    string bktitle = ((TextBox)GridViewRows[eRowIndex]Cells[]Controls[])Text;  
    string bktitle = ((TextBox)DetailsViewRows[]Cells[]Controls[])Text; 

  注意查找控件有兩種方法

  (各數據綁定控件的都可以用下面兩種方法進行查找)

  如果知道控件的ID可以用這種方法

  ((TextBox)eItemFindControl(txtTile))Text;//這是查找

  如果不知道控件的ID可用這種方法

  ((TextBox)eItemCells[]Controls[])Text;//這是索引

  ASPNET數據綁定控件實際區別五給刪除按鈕添加確認:

  


    protected void DataList_ItemDataBound(object sender DataListItemEventArgs e)  
         {  
             if (eItemItemType == ListItemTypeItem || eItemItemType == ListItemTypeAlternatingItem)  
             {  
                 LinkButton lbtn =(LinkButton) eItemFindControl(lbtndelete);  
                 lbtnAttributesAdd(OnClickreturn confirm(確定要刪除嗎?));  
             }  
         }  
     
    protected void DataGrid_ItemDataBound(object sender DataGridItemEventArgs e)  
         {  
             if(eItemItemType==ListItemTypeItem || eItemItemType==ListItemTypeAlternatingItem)  
             {  
                 LinkButton lbtn = (LinkButton)eItemCells[]Controls[];  
                 lbtnAttributesAdd(OnClickreturn confirm(確認刪除?));  
             }  
         }  
     
     
    protected void GridView_RowDataBound(object sender GridViewRowEventArgs e)  
         {  
             if(eRowRowType== DataControlRowTypeDataRow)  
             {  
                 string strid = eRowCells[]Text;//獲取第一行的字段值;  
                 eRowCells[]AttributesAdd(OnClick return confirm(確認刪除\+strid+\));  
                 //用了兩個轉義符將第一列的值用引號括起來注意轉義符後面一個將不被解釋是直接放上去;  
     
             }  
         } 

  ASPNET數據綁定控件比較的基本情況就向你介紹到這裡希望對你理解ASPNET數據綁定控件比較有所幫助


From:http://tw.wingwit.com/Article/program/net/201311/13361.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.