C# I';我正试图在CheckedListBox中添加一个复选框

C# I';我正试图在CheckedListBox中添加一个复选框,c#,.net,winforms,C#,.net,Winforms,我有一个小问题,我试图从代码中的checkedlistbox中添加一个复选框,名称更改,但它没有显示在复选框中 private void clickToolStripMenuItem\u单击(对象发送方,事件参数e) { //创建检查表 CheckedListBox CheckedListBox=新的CheckedListBox(); //在鼠标位置生成检查表 checkedlistbox.Location=新点(MousePosition.X-400,MousePosition.Y-200);

我有一个小问题,我试图从代码中的checkedlistbox中添加一个复选框,名称更改,但它没有显示在复选框中

private void clickToolStripMenuItem\u单击(对象发送方,事件参数e)
{
//创建检查表
CheckedListBox CheckedListBox=新的CheckedListBox();
//在鼠标位置生成检查表
checkedlistbox.Location=新点(MousePosition.X-400,MousePosition.Y-200);
//添加复选框
复选框选项1=新复选框();
//复选框90
选中列表框。宽度=500;
option1.Text=“option1”;
this.Controls.Add(选中列表框);
checkedlistbox.Items.Add(选项1);
//测试名称是否更改
MessageBox.Show(选项1.Text);
}


提前感谢。

您每次都在创建一个新的CheckedListBox。您应该重新使用CheckedListBox,只向其添加一个新的复选框。此外,您不向CheckedListBox控件添加复选框控件,而是添加一个字符串(例如“选项1”并让CheckedListBox为您构建其选中显示。您看到的输出是由于CheckedListBox调用了您传递的CheckBox控件上的ToString方法。但是CheckBox控件没有为ToString方法实现自己的版本,因此调用将通过继承链进行,直到到达对象为止基类,其中ToString方法是通过输出类的名称实现的,这是您在CheckedListBox输出中得到的。