C# 从复选框中提取文本输出

C# 从复选框中提取文本输出,c#,checkbox,listbox,C#,Checkbox,Listbox,因此,我试图从复选框中提取文本属性并将其显示到列表框中,但它是否被选中似乎无关紧要,我做错了什么 private void btnCompute_Click(object sender, EventArgs e) { string accessories = ""; if (chkChildSeat.Checked) ; { accessories = accessories + chkChildSeat.Text

因此,我试图从复选框中提取文本属性并将其显示到列表框中,但它是否被选中似乎无关紧要,我做错了什么

 private void btnCompute_Click(object sender, EventArgs e)
    {
        string accessories = "";
        if (chkChildSeat.Checked) ;
        {
            accessories = accessories + chkChildSeat.Text+",";
        }
        if (chkLockHelmet.Checked) ;
        {
            accessories = accessories + chkLockHelmet.Text+",";
        }
        if (chkTrailer.Checked) ;
        {
            accessories=accessories+chkTrailer.Text;
        }
        lstInvoice.Items.Add(String.Format("{0,-49}{1,-14}", "Invoice Date", DateTime.Now.ToString("d")));
        lstInvoice.Items.Add(String.Format("{0,-50}{1,-13}", Customername, CustomerID));
        lstInvoice.Items.Add(String.Format("{0,-49}{1,-14}", "Rental Date", dateTimePicker1.Value));
        lstInvoice.Items.Add(string.Format("{0,-25}{1,-28}", "Accessories", accessories.ToString()));
        lstInvoice.Items.Add(string.Format("{0,-49}{1,-14}", "Total Invoice Amount", result.ToString("c")));
    }
这将显示所有checkboxname.text属性,无论其是否已选中 有人能告诉我为什么在选中更多选项时,列表框上的文本会被截断吗?这与我的string.format行有关吗

lstInvoice.Items.Add(string.Format("{0,-25}{1,-28}", "Accessories", accessories.ToString()));

删除
if的

您的代码:if(chkChildSeat.Checked)

应该是:
if(chkChildSeat.Checked)

分号将表示
if
语句的结尾。因此,所有附件分配语句都将执行,因为它们不会在
if块中考虑