我有一个复选框列表。此外,我还附加了一个ItemCheck事件,所以在我检查了一个项之后,就会执行一个函数。但问题是,在我的程序中,有一点我需要以编程方式选中/取消选中项。这个动作触发事件函数。
我的猜测也适用于其他控件。
我怎样才能防止这种行为?我需要运行的功能,只有当用户与它互动,而不是当我做的事情与我的应用程序内的控制。

最佳答案

您可以将对checkedboxlist所做的所有更改打包到一个函数中,并且每次都使用该函数。代码可能如下所示:

private void UpdateCheckedListBox() // You would need to add your parameters
{
    checkedListBox1.ItemCheck -= checkedListBox1_ItemCheck;
    // your changes to checked list box goes here
    checkedListBox1.ItemCheck += checkedListBox1_ItemCheck;
}

08-19 00:01