Winform ComboBox 绑定数据源 触发SelectedIndexChanged事件 处理办法
2021-03-17 08:26
标签:contains tar something form info rop com 去掉 nsf 最近寫Winform程式,發現Winform中的ComboBox和Web中的Dropdown相差很大,在ComboBox 绑定数据源 會触发SelectedIndexChanged事件,很困擾,查找了資料,處理方法大體分為三種 1.添加一个标记位,在绑定前设置为false,绑定完成后设置回true(個人覺得用起來的很奇怪) 2.绑定前,将SelectedIndexChanged的委托去掉,等绑定完成后,再添加事件委托(覺得比較複雜) 3.判斷是否是選擇狀態(最後本人用的) Winform ComboBox 绑定数据源 触发SelectedIndexChanged事件 处理办法 标签:contains tar something form info rop com 去掉 nsf 原文地址:https://www.cnblogs.com/superfeeling/p/12392959.htmlvoid BindComboBox()
{
flag=false;
ComboxBox1.ValueMember="ValueColumn";
ComboxBox1.DisplayMember="DisplayColumn";
ComboxBox1.DataSource=DataTable1;
flag=true;
}
privatevoid ComboxBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if(flag)
{
//Do something
}
}
void BindComboBox()
{ //去除委托
ComboBox1.SelectedIndexChanged -= new EventHandler(ComboBox1_SelectedIndexChanged);
ComboBox1.DataSource = null;
ComboBox1.ValueMember = "ValueColumn";
ComboBox1.DataSource = DataTable1;
//添加委托
ComboBox1.SelectedIndexChanged += new EventHandler(ComboBox1_SelectedIndexChanged);
ComboBox1.DisplayMember = "DisplayColumn";
}
privatevoid ComboxBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if(ComboxBox1.ContainsFocus)
{
//Do something
}
}
上一篇:C#高级编程第11版 - 第二章
文章标题:Winform ComboBox 绑定数据源 触发SelectedIndexChanged事件 处理办法
文章链接:http://soscw.com/index.php/essay/65235.html