C# 调用(新方法调用器(委托 { _表单.lst_BarcodeScanEvents.AddItem(received1+Environment.NewLine); })); } }而(!_i退出); //var材料=收到的子串(10,5); //_form.label5.Text+=string.Join(Environment.NewLine,material); CloseConnection(); } 公共列表GetBarcodeList() { var readData=new List(); foreach(格式为_form.lst_BarcodeScanEvents.Items的字符串列表) { readData.Add(列表); MessageBox.Show(列表); } 返回读取数据; } 公共字符串读取() { 变量数据=新字节[1024]; var received=“”; 变量大小=_networkStream.Read(data,0,data.Length); 如果(大小==0) 返回null; 接收=Encoding.ASCII.GetString(数据,0,大小); 收到的报税表; } 公共连接() { MessageBox.Show(@“已关闭连接”,“重要消息”); _networkStream.Close(); _client.Close(); } } }

C# 调用(新方法调用器(委托 { _表单.lst_BarcodeScanEvents.AddItem(received1+Environment.NewLine); })); } }而(!_i退出); //var材料=收到的子串(10,5); //_form.label5.Text+=string.Join(Environment.NewLine,material); CloseConnection(); } 公共列表GetBarcodeList() { var readData=new List(); foreach(格式为_form.lst_BarcodeScanEvents.Items的字符串列表) { readData.Add(列表); MessageBox.Show(列表); } 返回读取数据; } 公共字符串读取() { 变量数据=新字节[1024]; var received=“”; 变量大小=_networkStream.Read(data,0,data.Length); 如果(大小==0) 返回null; 接收=Encoding.ASCII.GetString(数据,0,大小); 收到的报税表; } 公共连接() { MessageBox.Show(@“已关闭连接”,“重要消息”); _networkStream.Close(); _client.Close(); } } },c#,winforms,checkedlistbox,C#,Winforms,Checkedlistbox,因此,就像我之前所说的,对于它插入到checkedlistbox的每个新项目,我希望每次它向checkedlistbox添加新数据时都自动选择它。为此,我建议在初始化表单的Component()后创建一个订阅的事件,如下所示: public Form1() { InitializeComponent(); lst_BarcodeScanEvents.ControlAdded += new ControlEventHandler(AddedNewSe

因此,就像我之前所说的,对于它插入到checkedlistbox的每个新项目,我希望每次它向checkedlistbox添加新数据时都自动选择它。

为此,我建议在初始化表单的Component()后创建一个订阅的事件,如下所示:

    public Form1()
    {
        InitializeComponent();
        lst_BarcodeScanEvents.ControlAdded += new ControlEventHandler(AddedNewSelect);
    }

    private void AddedNewSelect(object sender, ControlEventArgs e)
    {
        lst_BarcodeScanEvents.SetItemChecked(e.Control.TabIndex, true);
    }

为此,我建议在初始化表单的Component()后创建一个订阅的事件,如下所示:

    public Form1()
    {
        InitializeComponent();
        lst_BarcodeScanEvents.ControlAdded += new ControlEventHandler(AddedNewSelect);
    }

    private void AddedNewSelect(object sender, ControlEventArgs e)
    {
        lst_BarcodeScanEvents.SetItemChecked(e.Control.TabIndex, true);
    }

设置
选中列表框
的新添加项的
选中状态的问题通常很简单,但由于所讨论的列表框的性质,这个问题有些复杂

CheckedListBox
是一个具有自定义事件和属性的自定义控件。
这实际上是一种比较常见的定制(可以在MSDN论坛的帖子中看到一种实现:
)但这可能会使事件的解释复杂化

自定义控件在向列表添加新项时(从承载该控件的窗体以外的类),会引发自定义
itemsadded
事件

private void [CheckedListBox]_ItemAdded(object sender, ListBoxItemEventArgs e)
添加项的索引由自定义对象的
e.Index
属性引用。
通过提供的代码,可以确定此事件处理程序是可以设置新项目的
已选中状态的自然位置:

private void lst_BarcodeScanEvents_ItemAdded(object sender, ListBoxItemEventArgs e)
{
    lst_BarcodeScanEvents.SetItemChecked(e.Index, true);
}

设置
选中列表框
的新添加项的
选中状态的问题通常很简单,但由于所讨论的列表框的性质,这个问题有些复杂

CheckedListBox
是一个具有自定义事件和属性的自定义控件。
这实际上是一种比较常见的定制(可以在MSDN论坛的帖子中看到一种实现:
)但这可能会使事件的解释复杂化

自定义控件在向列表添加新项时(从承载该控件的窗体以外的类),会引发自定义
itemsadded
事件

private void [CheckedListBox]_ItemAdded(object sender, ListBoxItemEventArgs e)
添加项的索引由自定义对象的
e.Index
属性引用。
通过提供的代码,可以确定此事件处理程序是可以设置新项目的
已选中状态的自然位置:

private void lst_BarcodeScanEvents_ItemAdded(object sender, ListBoxItemEventArgs e)
{
    lst_BarcodeScanEvents.SetItemChecked(e.Index, true);
}

这真的与问题无关。OP询问如何自动检查添加到items集合的最后一个项目。Hello Tiago Silva不工作不是自动选择checkedlistbox中的每个新项目。这与问题无关。OP询问如何自动检查添加到items集合的最后一个项目。Hello Tiago Silva不工作不是自动选择checkedlistbox中的每个新项目。