一个关于CheckBox的问题! 这个怎么做啊???关键是 CheckState.Indeterminate 这个状态! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 for (int i = 0; i < dataGridView.Rows.Length; i++) { dataGridView.Rows[i].Selected = true; } ListView mainList=............mainList.CheckBoxes = true;foreach (ListViewItem lvi in mainList.Items) lvi.Checked = true; 看来分要送人了,回答的完全不着边!!全选和全不选,我以搞写!关键是 CheckState.Indeterminate 这个状态 和上边的 CheckBox 关联不上! CheckBox checkBox1=......;ListView mainList=......;mainList.CheckBoxes = true;.......============================= public Form1() { InitializeComponent(); mainList.ItemChecked+=new ItemCheckedEventHandler(mainList_ItemChecked); } void mainList_ItemChecked(object sender, ItemCheckedEventArgs e) { int num = 0; foreach (ListViewItem lvi in mainList.Items) if (lvi.Checked) num++; if (num == 0)//状态1 checkBox1.CheckState = CheckState.Unchecked; if(num>0&&num<mainList.Items.Count)//状态2 checkBox1.CheckState = CheckState.Indeterminate; if(num==mainList.Items.Count)//状态3 checkBox1.CheckState = CheckState.Checked; } 这是我写的 全选和全不选 ,你们写的我看不懂,我是自学的,连高中都没上,麻烦各位高手写简单点好吗? private void AllcheckBox_CheckedChanged(object sender, EventArgs e) { if (AllcheckBox.Checked == false) { int h = n.Length - 1; for (int f = 0; f <= h; f++) { SoftInfo s = (SoftInfo)panel.Controls["SIC" + f.ToString()]; CheckBox c = (CheckBox)s.Controls["checkBox"]; c.Checked = false; } } else if (AllcheckBox.Checked == true) { int h = n.Length - 1; for (int f = 0; f <= h; f++) { SoftInfo s = (SoftInfo)panel.Controls["SIC" + f.ToString()]; CheckBox c = (CheckBox)s.Controls["checkBox"]; c.Checked = true; } } } 直接一句搞定: private void AllcheckBox_CheckedChanged(object sender, EventArgs e) { int h = n.Length - 1; for (int f = 0; f <= h; f++) { SoftInfo s = (SoftInfo)panel.Controls["SIC" + f.ToString()]; CheckBox c = (CheckBox)s.Controls["checkBox"]; c.Checked = AllcheckBox.Checked ; } } 看我7楼的原理。部分选中那个状态不是你能用鼠标控制的,他是由上面的checkbox是否全部选中来决定的。如果全选中的话,他就会自动选中checkBox1.CheckState = CheckState.Checked;,一部分选中国,则设置checkBox1.CheckState = CheckState.Indeterminate;全未选中,则checkBox1.CheckState = CheckState.UnChecked; HttpWebResponse状态码的问题,在线等!!!! listBox 中怎么获取选中项的值 正则表达式分割字符串 如何使用代码让用户登陆? 关于.net常用技术点的文档实例。 C#中,枚举和结构类型为什么定义在main()外和类的内部? 如何通过c#程序读取某个具有版本号的.net程序dll的版本号信息? 菜鸟来问问 C#没有全局变量,大家谈谈如何处理 我晕!不知道我做错了什么!我的信誉分减了7分!郁闷! 已获得一个对象句柄,欲对其内部继续操作 同一个解决方案下建立的两个项目怎么互相传递值
{
dataGridView.Rows[i].Selected = true;
}
......mainList.CheckBoxes = true;foreach (ListViewItem lvi in mainList.Items)
lvi.Checked = true;
看来分要送人了,回答的完全不着边!!全选和全不选,我以搞写!关键是 CheckState.Indeterminate 这个状态 和上边的
CheckBox 关联不上!
ListView mainList=......;
mainList.CheckBoxes = true;
.......
=============================
public Form1()
{
InitializeComponent();
mainList.ItemChecked+=new ItemCheckedEventHandler(mainList_ItemChecked);
}
void mainList_ItemChecked(object sender, ItemCheckedEventArgs e)
{
int num = 0;
foreach (ListViewItem lvi in mainList.Items)
if (lvi.Checked)
num++;
if (num == 0)//状态1
checkBox1.CheckState = CheckState.Unchecked;
if(num>0&&num<mainList.Items.Count)//状态2
checkBox1.CheckState = CheckState.Indeterminate;
if(num==mainList.Items.Count)//状态3
checkBox1.CheckState = CheckState.Checked;
}
这是我写的 全选和全不选 ,你们写的我看不懂,我是自学的,连高中都没上,麻烦各位高手写简单点好吗? private void AllcheckBox_CheckedChanged(object sender, EventArgs e)
{
if (AllcheckBox.Checked == false)
{
int h = n.Length - 1;
for (int f = 0; f <= h; f++)
{
SoftInfo s = (SoftInfo)panel.Controls["SIC" + f.ToString()];
CheckBox c = (CheckBox)s.Controls["checkBox"];
c.Checked = false;
}
}
else if (AllcheckBox.Checked == true)
{
int h = n.Length - 1;
for (int f = 0; f <= h; f++)
{
SoftInfo s = (SoftInfo)panel.Controls["SIC" + f.ToString()];
CheckBox c = (CheckBox)s.Controls["checkBox"];
c.Checked = true;
}
}
}
private void AllcheckBox_CheckedChanged(object sender, EventArgs e)
{
int h = n.Length - 1;
for (int f = 0; f <= h; f++)
{
SoftInfo s = (SoftInfo)panel.Controls["SIC" + f.ToString()];
CheckBox c = (CheckBox)s.Controls["checkBox"];
c.Checked = AllcheckBox.Checked ;
}
}
,一部分选中国,则设置checkBox1.CheckState = CheckState.Indeterminate;
全未选中,则checkBox1.CheckState = CheckState.UnChecked;