1

ListView 内のチェックボックスがダブルクリック イベントでチェックされないようにしようとしています。

私はすでにやった:

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

でもcheckedイベントが呼び出されて四角いボックス内でチェックマークが点滅するので、本当に手間がかかると思います。

私はこの答えに出くわしました: C# を使用して ListView の ItemChecked イベントが SubItemClicked に干渉しないようにする

そうするのに最適な方法のようですが、これを機能させる方法がわかりません。通知やメッセージなどについて少し読んでみましたが、コードに適用するのに十分なほど不安定なものは見つかりませんでした。

誰かがこれについて私に光を当てることができますか?

どうもありがとうございました!

4

1 に答える 1

2

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;
        }
    }
于 2011-10-07T21:09:55.890 に答える