我有一个带有复选框的ListView:
listView1.View = View.Details;
listView1.CheckBoxes = true;
ListViewItem item1 = new ListViewItem("ONE");
ListViewItem item2 = new ListViewItem("TWO");
ListViewItem item3 = new ListViewItem("THREE");
listView1.Items.Add(item1);
listView1.Items.Add(item2);
listView1.Items.Add(item3);
我想只禁用第二个复选框,可以吗?
1条答案
按热度按时间fzwojiic1#
我认为您可以使用DrawItem事件对所有者绘图进行此操作。在事件处理程序中,在复选框上方绘制一个填充有SystemColors.Window* 的矩形以隐藏它。
我还实现了复选框隐藏在第三方控制Better ListView Express。项目有一个布尔属性,名为AllowShowCheckBox**,您可以在每个项目上分别将其设置为false。它还支持三态复选框。