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

ASP.NET CheckBoxList組件編程淺析

2013-11-13 10:03:36  來源: .NET編程 

  ASPNET CheckBoxList組件編程的出現CheckBox選擇組件是一個程序中都經常的組件在程序設計中使用到該組件一般都不會只使用到一個往往是以多個此類組件的形式出現的在ASPNET頁面中如果要使用到多個CheckBox組件除了添加多個CheckBox組件在頁面中之外還有一種比較方便的方法就是使用CheckBoxList組件CheckBoxList組件是由一組的CheckBox組件組成的在此組件中CheckBox是做為條目的形式出現的並且對每個在CheckBoxList組件中的CheckBox都有一個索引號這樣在程序中就更容易來處理了

  這時你可能要問這不是多此一舉麼既然有了CheckBox組件還要CheckBoxList組件干什麼?這是因為在程序設計的過程中處理CheckBoxList組件要往往要比處理CheckBox組件相對容易的多並且也明了的多舉例如下

  假定有一個CheckBoxList組件和有十個CheckBox組件並且這個CheckBoxList組件是由這十個CheckBox組件構成的為了檢測這十個CheckBox組件中的哪些已經被選擇的如果程序中選用的CheckBox組件就需要如下代碼

  


     if ( C  Checked )  
     {  
    }  
     if ( C  Checked )  
     {  
    }  
       
     if ( C  Checked )  
     {  
     }  

  但如果程序中使用了CheckBoxList組件就只需要以下這幾行代碼就可以了

  


     for ( int i =  ; i ﹤ CHK  Items  Count ; i++ )  
     {  
    if ( CHK  Items [ i ]  Selected )  
    {  
     //處理你要完成的工作  
    }  
     } 

  注釋其中C C是CheckBox組件CHK是CheckBoxList組件

  可見用了CheckBoxList組件在程序設計中的確更明了更簡潔了並且只要你掌握了CheckBoxList組 件的用法CheckBox組件的用法大致也就會了

  一. 如何在創建一個ASPNET CheckBoxList組件

  


    ﹤asp:CheckBoxList runat = "server" id = C ﹥  
    ﹤asp:ListItem Value =  ﹥第一個檢查框﹤/asp:ListItem ﹥  
    ﹤asp:ListItem Value =  ﹥第二個檢查框﹤/asp:ListItem ﹥  
    ﹤asp:ListItem Value =  ﹥第三個檢查框﹤/asp:ListItem ﹥  
     
     
    //注釋在這裡可以加入若干個檢查框  
     
    ﹤/asp:CheckBoxList ﹥ 

  在ASPNET頁面中加入上面的語句就可以產生一個名稱為"C"的CheckBoxList組件了

  二. ASPNET CheckBoxList組件中經常使用到的屬性

  I TextAlign屬性取值為LeftRight如果TextAlign的值為Left則CheckBoxList組件中的檢查框的文字在選框的左邊同理如果TextAlign的值為Right則檢查框的文字在選框的右邊

  II Selected屬性為布爾型判定組件中的檢查框是否被選中

  III RepeatColumns屬性在CheckBoxList組件中有若干檢查框此屬性主要是設定這些檢查框到底用多少行來顯示

  IV RepeatDirection屬性此屬性的值可為VerticalHorizontal當設定了RepeatColumns屬性後設定此屬性是如何排列組件中的各個檢查框的具體如下

  假定CheckBoxList組件有四個檢查框並且RepeatColumns屬性值為

  (如果RepeatDirection = Vertical則在頁面中檢查框的顯示方式如下

  檢查框 檢查框

  檢查框 檢查框

  (如果RepeatDirection = Horizontal則在頁面中檢查框的顯示方式如下

  檢查框 檢查框

  檢查框 檢查框

  V Count屬性返回CheckBoxList組件中有多少檢查框

  三. ASPNET CheckBoxList組件編程中經常使用到的方法

  (在組件中增加一個檢查框語法如下

  


    CHKList  Items  Add ( new ListItem ( ﹤ text ﹥  ﹤ value ﹥ ) ) 

  (訪問組件中的檢查框語法如下

  


    CHKList  Items [ ﹤ index ﹥ ] 

  (刪除組件中的檢查框語法如下

  


    CHKList  Items  Remove ( ﹤ index ﹥ ) 

  四. 實例介紹ASPNET CheckBoxList組件的使用方法

  (如何判定選擇了組件中的哪些檢查框

  在程序中是通過處理Selected屬性和Count屬性來完成的具體如下

  


    for ( int i =  ; i ﹤ ChkList  Items  Count ; i++ )  
    {  
    if( ChkList  Items [ i ]  Selected )  
    {  
    lblResult  Text += ChkList  Items [ i ] Text + "  " ;  
    }  

  (如何設定ASPNET CheckBoxList組件的外觀布局

  CheckBoxList組件有比較多的屬性來設定它的外觀在本文介紹的程序中主要是通過四個方面來設定組件的外觀布局的組件中的檢查框中的文本和選框的排列位置組件中各個檢查框布局

  組件中各個檢查框排列方向和組件中各個檢查框的排列行數具體的程序代碼如下

  


    //組件中的檢查框中的文本和選框的排列位置  
    switch ( cboAlign  SelectedIndex )  
    {  
     case  :  
    ChkList  TextAlign = TextAlign  Left ;  
    break ;  
     case  :  
    ChkList  TextAlign = TextAlign  Right ;  
    break ;  
    }  
    //組件中各個檢查框布局  
    switch ( cboRepeatLayout  SelectedIndex )  
    {  
     case  :  
    ChkList  RepeatLayout = RepeatLayout  Table ;  
    break ;  
     case  :  
    ChkList  RepeatLayout = RepeatLayout  Flow ;  
    break ;  
    }  
    //組件中各個檢查框排列方向  
    switch ( cboRepeatDirection  SelectedIndex)  
    {  
     case  :  
    ChkList  RepeatDirection = RepeatDirection  Vertical ;  
    break ;  
     case  :  
    ChkList  RepeatDirection = RepeatDirection  Horizontal ;  
    break ;  
    }  
    //組件中各個檢查框的排列行數  
    try 
    {  
     int cols = int  Parse ( txtRepeatColsText ) ;  
     ChkList  RepeatColumns = cols ;  
    }  
    catch ( Exception )  
    {  

  五. 文中源程序代碼(Checkaspx)

  Checkaspx源程序代碼如下:

  


    ﹤% @ Page Language = "C#" %﹥  
    ﹤html ﹥  
    ﹤head ﹥  
    ﹤title ﹥ CheckBoxList組件演示程序 ﹤/title ﹥  
    ﹤script runat = "server" ﹥  
     protected void Button_Click ( object sender  EventArgs e )  
     {  
    //組件中的檢查框中的文本和選框的排列位置  
    switch ( cboAlign  SelectedIndex )  
    {  
     case  :  
    ChkList  TextAlign = TextAlign  Left ;  
    break ;  
     case  :  
    ChkList  TextAlign = TextAlign  Right ;  
    break ;  
    }  
    //組件中各個檢查框布局  
    switch ( cboRepeatLayout  SelectedIndex )  
    {  
     case  :  
    ChkList  RepeatLayout = RepeatLayout  Table ;  
    break ;  
     case  :  
    ChkList  RepeatLayout = RepeatLayout  Flow ;  
    break ;  
    }  
    //組件中各個檢查框排列方向  
    switch ( cboRepeatDirection  SelectedIndex)  
    {  
     case  :  
    ChkList  RepeatDirection = RepeatDirection  Vertical ;  
    break ;  
     case  :  
    ChkList  RepeatDirection = RepeatDirection  Horizontal ;  
    break ;  
    }  
    //組件中各個檢查框的排列行數  
    try 
    {  
     int cols = int  Parse ( txtRepeatColsText ) ;  
     ChkList  RepeatColumns = cols ;  
    }  
    catch ( Exception )  
    {  
    }  
    lblResult  Text = "" ;  
    for ( int i =  ; i ﹤ ChkList  Items  Count ; i++ )  
    {  
     if( ChkList  Items [ i ]  Selected )  
     {  
    lblResult  Text += ChkList  Items [ i ] Text + "  " ;  
     }  
    }  
     }  
     ﹤/script ﹥  
     ﹤/head ﹥  
     ﹤body ﹥  
     ﹤form runat = "server" ﹥  
    ﹤h align = center ﹥ CheckBoxList組件演示程序 ﹤/h ﹥  
    ﹤table ﹥  
     ﹤tr ﹥  
    ﹤td ﹥ 組件中的文本排列位置 ﹤/td ﹥  
    ﹤td ﹥  
    ﹤asp:DropDownList id = cboAlign runat = "server" ﹥  
     ﹤asp:ListItem ﹥ 居左 ﹤/asp:ListItem ﹥  
     ﹤asp:ListItem ﹥ 居右 ﹤/asp:ListItem ﹥  
    ﹤/asp:DropDownList ﹥  
    ﹤/td ﹥  
     ﹤/tr ﹥  
     ﹤tr ﹥  
    ﹤td ﹥ 組件中各個條目布局 ﹤/td ﹥  
    ﹤td ﹥  
    ﹤asp:DropDownList id = cboRepeatLayout runat = "server" ﹥  
     ﹤asp:ListItem ﹥ 表格型 ﹤/asp:ListItem ﹥  
     ﹤asp:ListItem ﹥ 緊湊型 ﹤/asp:ListItem ﹥  
    ﹤/asp:DropDownList ﹥  
    ﹤/td ﹥  
     ﹤/tr ﹥  
     ﹤tr ﹥  
    ﹤td﹥ 組件中各個條目排列方向﹤/td ﹥  
    ﹤td ﹥  
    ﹤asp:DropDownList id = cboRepeatDirection runat = "server" ﹥  
     ﹤asp:ListItem ﹥ 水平方向 ﹤/asp:ListItem ﹥  
     ﹤asp:ListItem ﹥ 垂直方向 ﹤/asp:ListItem ﹥  
    ﹤/asp:DropDownList ﹥  
    ﹤/td ﹥  
     ﹤/tr ﹥  
     ﹤tr ﹥  
    ﹤td ﹥ 組件中各個條目排列行數 ﹤/td ﹥  
    ﹤td ﹥ ﹤asp:TextBox id = "txtRepeatCols" runat = "server" /﹥ ﹤/td ﹥  
     ﹤/tr ﹥  
    ﹤/table ﹥ 

  請選擇你所需要學習的計算機語言類型

  


    ﹤asp:CheckBoxList id = "ChkList" RepeatDirection = Horizontal runat = "server" ﹥  
     ﹤asp:ListItem ﹥ Visual C++ Net ﹤/asp:ListItem ﹥  
     ﹤asp:ListItem ﹥ Visual C# ﹤/asp:ListItem ﹥  
     ﹤asp:ListItem ﹥ VBNET ﹤/asp:ListItem ﹥  
     ﹤asp:ListItem ﹥ JScriptNET ﹤/asp:ListItem ﹥  
     ﹤asp:ListItem ﹥ Visual J# ﹤/asp:ListItem ﹥  
    ﹤/asp:CheckBoxList ﹥  
     
     ﹤asp:Button Text = "提交" runat = "server" onclick = "Button_Click" /﹥  
     ﹤h ﹥ ﹤font color = red ﹥ 你選擇的計算機語言類型為 ﹤/font ﹥ ﹤/h ﹥  
     ﹤asp:Label id = lblResult runat = "server" /﹥  
     ﹤/form ﹥  
     ﹤/body ﹥  
    ﹤/html ﹥ 

  六. ASPNET CheckBoxList組件編程總結

  其實CheckBoxList組件也是一個服務器端組件


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