如何处理Windows消息

本文关键字:Windows 消息 处理 何处理 | 更新日期: 2023-09-27 18:10:54

我试图防止ListView中的复选框在双击事件时被检查。

我已经做了:

listView.SelectedItems[0].Checked = (listView.SelectedItems[0].Checked) ? false : true;

但是checked事件被调用并且复选标记在方框内闪烁,所以我真的认为这很糟糕。

我偶然发现了这个答案:使用c#

防止ListView上的ItemChecked事件干扰SubItemClicked这似乎是一个完美的方法,但我不知道如何使它工作。我试着读了一些关于通知、消息等的内容,但没有发现什么可以让我把它应用到我的代码中。

谁能给我点启示吗?

非常感谢!

如何处理Windows消息

简单地实现ItemCheck事件。您可以通过更改e.NewValue属性来取消支票。一个愚蠢的例子:

    private void listView1_ItemCheck(object sender, ItemCheckEventArgs e) {
        // Disable checking odd numbered items
        if (e.Index % 2 == 1) {
            e.NewValue = e.CurrentValue;
        }
    }