1.无效
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace checkedListBox
{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void checkedListBox1_SelectedIndexChanged(object sender, EventArgs e){}private void Form1_Load(object sender, EventArgs e){int n = 7;//加入项for (int i = 0; i < 7; i++){checkedListBox1.Items.Add(i);}//1.推断第i项是否选中,选中为true,否则为falsefor (int i = 0; i < checkedListBox1.Items.Count; i++){if (checkedListBox1.GetItemChecked(i)){MessageBox.Show("选中" + i + "选项");}}}private void button1_Click(object sender, EventArgs e){//2.推断第i项是否选中,选中为true,否则为false/*for (int i = 0; i < checkedListBox1.Items.Count; i++){if (checkedListBox1.GetItemChecked(i)){MessageBox.Show("选中" + i + "选项");}}*/}}
}
2.有效
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace checkedListBox
{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void checkedListBox1_SelectedIndexChanged(object sender, EventArgs e){}private void Form1_Load(object sender, EventArgs e){int n = 7;//加入项for (int i = 0; i < 7; i++){checkedListBox1.Items.Add(i);}//1.推断第i项是否选中,选中为true,否则为false/*for (int i = 0; i < checkedListBox1.Items.Count; i++){if (checkedListBox1.GetItemChecked(i)){MessageBox.Show("选中" + i + "选项");}}*/}private void button1_Click(object sender, EventArgs e){ //2.推断第i项是否选中,选中为true,否则为falsefor (int i = 0; i < checkedListBox1.Items.Count; i++){if (checkedListBox1.GetItemChecked(i)){MessageBox.Show("选中" + i + "选项");}}}}
}
3.为啥第一个就无效,是缺乏事件触发吗,小白求指教
放到 checkedListBox1_SelectedIndexChanged(object sender, EventArgs e){}里也是无效,不知道哪里缺了什么,求大佬解答














