我根本不知道这是否可行,但是如果有人知道如何实现这一目标,那将是一件很不起眼的事情。我在winform中有一个复选框列表,我需要对某些复选框进行半选中(例如,未选中且未选中的复选框)。甚至可以在winforms复选框列表中执行此操作吗?如果不是,是否可以通过常规复选框而不是复选框列表来实现?
这也可以在CheckListBox上实现,但是您必须从MSDN自己设置不确定状态:
CheckedListBox对象通过CheckState枚举支持三种状态:“已检查”,“不确定”和“未检查”。您必须在代码中设置Indeterminate状态,因为CheckedListBox的用户界面不提供这样做的机制。
还有一个代码示例:
// Adds the string if the text box has data in it.
private void button1_Click(object sender, System.EventArgs e)
{
if(textBox1.Text != "")
{
if(checkedListBox1.CheckedItems.Contains(textBox1.Text)== false)
checkedListBox1.Items.Add(textBox1.Text,CheckState.Checked); // here you can set CheckState.Indeterminate!
textBox1.Text = "";
}
}
供参考:http : //msdn.microsoft.com/zh-cn/library/system.windows.forms.checkedlistbox%28v=vs.110%29.aspx
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句