C#中Combox的綁定總結C#中Combox的綁定總結

來源:互聯網
上載者:User
C#中Combox的綁定總結

  剛來實習,經理讓修改一個考試系統,看到以前的老前輩的代碼,感覺和自己以前在學校接觸的不一樣,特此總結一下Combox的綁定,雖然這個問題都是老生常談的東西了。感覺自己總結過了,明白了,反思了才會懂得,理解,以後也會運用自如了。

1,下面是前輩的例子,

首先從資料庫中得到ds資料集

然後進行迴圈綁定添加items項

foreach(DataRow dr in ds.Tables[0].Rows)
     {                   
         this.comb_type.Items.Add(new ControlItem(dr,dr["answertypename"].ToString()));                   
     }
this.comb_type.SelectedIndex =0;

2,自己在學校學習的是綁定dt資料表或ds資料集。這樣就不用迴圈添加items項了,感覺代碼簡練了很多。

this.comb_type.DataSource = dt;//也可以用ds,此處就是ds.Tables[0];

this.comb_type.DisplayMember = "answertypename"; //綁定顯示成員的名字

this.com_answertype.ValueMember = "answertypeID";//綁定combox顯示成員的值
this.com_answertype.SelectedValue = "0";//讓combox固定顯示某個成員名字。

3,可以設定combox的DisplayMember,ValueMemeber

ValueMemeber 是combox的值成員,而DisplayMember是combox的顯示成員。

控制項屬性設定和代碼中設定功能是一樣的。

4,綁定datasourse後,怎麼樣讓combox添加一項“請選擇”
在asp中直接一句話:

this.DropDownList1.Items.Insert(0,new   ListItem( "請選擇 ", "0 "));

但在winform中,綁定datasourse後就不能簡單實現添加“請選擇”項了。

可以用下面的兩種方法實現

(1)首先獲得dt  //或者ds

DataRow dr = ds.Tables[0].NewRow();
dr[0] = "0 ";
dr[1] = "請選擇 ";
ds.Tables[0].Rows.InsertAt(dr, 0);

this.com_answertype.DataSource = ds.Tables[0];
this.com_answertype.DisplayMember = "answertypename";
this.com_answertype.ValueMember = "answertypeID";
this.com_answertype.SelectedValue = "0"; //在此處選擇0值,即可顯示請選擇。

(2)在資料庫中直接添加一項“請選擇”,然後綁定dt或ds,在選擇要顯示的項即可。

  剛來實習,經理讓修改一個考試系統,看到以前的老前輩的代碼,感覺和自己以前在學校接觸的不一樣,特此總結一下Combox的綁定,雖然這個問題都是老生常談的東西了。感覺自己總結過了,明白了,反思了才會懂得,理解,以後也會運用自如了。

1,下面是前輩的例子,

首先從資料庫中得到ds資料集

然後進行迴圈綁定添加items項

foreach(DataRow dr in ds.Tables[0].Rows)
     {                   
         this.comb_type.Items.Add(new ControlItem(dr,dr["answertypename"].ToString()));                   
     }
this.comb_type.SelectedIndex =0;

2,自己在學校學習的是綁定dt資料表或ds資料集。這樣就不用迴圈添加items項了,感覺代碼簡練了很多。

this.comb_type.DataSource = dt;//也可以用ds,此處就是ds.Tables[0];

this.comb_type.DisplayMember = "answertypename"; //綁定顯示成員的名字

this.com_answertype.ValueMember = "answertypeID";//綁定combox顯示成員的值
this.com_answertype.SelectedValue = "0";//讓combox固定顯示某個成員名字。

3,可以設定combox的DisplayMember,ValueMemeber

ValueMemeber 是combox的值成員,而DisplayMember是combox的顯示成員。

控制項屬性設定和代碼中設定功能是一樣的。

4,綁定datasourse後,怎麼樣讓combox添加一項“請選擇”
在asp中直接一句話:

this.DropDownList1.Items.Insert(0,new   ListItem( "請選擇 ", "0 "));

但在winform中,綁定datasourse後就不能簡單實現添加“請選擇”項了。

可以用下面的兩種方法實現

(1)首先獲得dt  //或者ds

DataRow dr = ds.Tables[0].NewRow();
dr[0] = "0 ";
dr[1] = "請選擇 ";
ds.Tables[0].Rows.InsertAt(dr, 0);

this.com_answertype.DataSource = ds.Tables[0];
this.com_answertype.DisplayMember = "answertypename";
this.com_answertype.ValueMember = "answertypeID";
this.com_answertype.SelectedValue = "0"; //在此處選擇0值,即可顯示請選擇。

(2)在資料庫中直接添加一項“請選擇”,然後綁定dt或ds,在選擇要顯示的項即可。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.