委托設(shè)計(jì)網(wǎng)站 要注意哪些問題哈爾濱關(guān)鍵詞排名工具
最近有點(diǎn)收獲,寫下來,以后忘了還能查查,嘿嘿。第一次寫,小菜啊,請大家多多指正啊。
1. ?我們都知道?SelectedValueChanged和SelectedIndexChanged在綁定數(shù)據(jù)經(jīng)常會被觸發(fā)。這篇寫的很詳細(xì):
http://www.cnblogs.com/gossip/archive/2008/12/10/1352193.html
?
2. ?我發(fā)現(xiàn)用這樣的方法可以避免多次觸發(fā):
1 public void BindUsers()2 {3 // 解除SelectedIndexChanged事件4 this.comboBox1.SelectedIndexChanged -= new System.EventHandler(this.comboBox1_SelectedValeChanged);5 this.comboBox1.DataSource = GetProvince();6 this.comboBox1.ValueMember = "Id";7 this.comboBox1.DisplayMember = "Name";8 // 重新綁定SelectedIndexChanged事件9 this.comboBox1.SelectedIndexChanged += new System.EventHandler(this.comboBox1_SelectedValeChanged); 10 }
?
3. 最近,做winform的一個小東西中,小小的利用了這個特征。
以下是我想要在頁面加載完成時實(shí)現(xiàn)的效果,combox1加載完畢顯示省份,combox2完成了城市的綁定。
?
一般的做法是在加載時綁定省份,而后在綁定當(dāng)前省份對應(yīng)的城市。
? 我采用了下面的做法,非常簡單,呵呵。
1 public void BindProvince()2 {3 // 解除SelectedIndexChanged事件4 //this.comboBox1.SelectedIndexChanged -= new System.EventHandler(this.comboBox1_SelectedValeChanged);5 this.comboBox1.ValueMember = "ProvinceId";6 this.comboBox1.DataSource = GetProvince();7 this.comboBox1.DisplayMember = "ProvinceName";8 // 重新綁定SelectedIndexChanged事件9 //this.comboBox1.SelectedIndexChanged += new System.EventHandler(this.comboBox1_SelectedValeChanged); 10 }
先綁?ProvinceId?屬性,再綁定數(shù)據(jù)源,這樣在執(zhí)行完 ?this.comboBox1.DataSource = GetProvince(); 后,會觸發(fā) ?SelectedIndexChanged 事件,這就自動的進(jìn)行了城市數(shù)據(jù)的綁定。
寫的不是很好,就當(dāng)是拋磚引玉吧。
?
?
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/nbnb/archive/2012/12/17/2821579.html