我希望在检查复选框时更改组合框文本,但它有某种延迟。
我认为问题在于ItemCheckEventHandler
,如果是的话我该怎么解决?
我尝试过更换:
private void cclb_ItemCheck(object sender, ItemCheckEventArgs e) {
if (ccbParent.ItemCheck != null) {
ccbParent.ItemCheck(sender, e);
ccbParent.Text = GetCheckedItemsStringValue();
}
}
和 :
private void cclb_ItemCheck(object sender, ItemCheckEventArgs e){
List<string> checkedItems = new List<string>();
foreach (var item in cclb.CheckedItems) {
checkedItems.Add(item.ToString());
}
if (e.NewValue == CheckState.Checked) {
checkedItems.Add(cclb.Items[e.Index].ToString());
}
else {
checkedItems.Remove(cclb.Items[e.Index].ToString());
}
foreach (string item in checkedItems) {
ccbParent.ItemCheck(sender, e);
ccbParent.Text = GetCheckedItemsStringValue();
}
}
猛跑小猪
相关分类