循环浏览复选框列表,如果选中,则将复选框的文本填充到某个 excel 单元格

本文关键字:复选框 填充 文本 excel 单元格 列表 浏览 如果 循环 | 更新日期: 2023-09-27 18:34:49

我有一个C# WinForm应用程序。有很多复选框,我想检查是否选中了其中任何一个,如果是这样,请将复选框具有的文本打印到 Excel 单元格中。我想我需要创建一个东西的列表。下面的代码是我现在拥有的代码,它绝对行不通,只是为了让你知道我想去哪里。提前感谢!

int j = 0;
                            if (checkBox7.Checked) j++;
                            if (checkBox8.Checked) j++;
                            if (checkBox9.Checked) j++;
                            if (checkBox10.Checked) j++;
                            if (checkBox11.Checked) j++;
                            if (checkBox12.Checked) j++;
                            if (checkBox13.Checked) j++;
                            if (checkBox14.Checked) j++;
                            if (checkBox15.Checked) j++;
                            if (checkBox16.Checked) j++;
                            if (checkBox17.Checked) j++;
                            if (checkBox18.Checked) j++;
                            if (checkBox24.Checked) j++;
                            if (checkBox42.Checked) j++;
                            if (checkBox43.Checked) j++;
                            if (checkBox44.Checked) j++;
                            if (checkBox45.Checked) j++;
                            for (int m = j; m < 17; m++)
                            {
                                NewExcelWorkSheet.Cells[ProductReturnRawData.Count + 10 + m, 1] = Convert.ToString(CheckBox[j].checked.Text);
                            }

循环浏览复选框列表,如果选中,则将复选框的文本填充到某个 excel 单元格

Locke 使用 CheckedListBox 的建议是有道理的,但如果你绝对不能,你必须做这样的事情:

if(checkBox7.Checked)
    doSomethingWith(checkBox7.Text);

等。仅通过查看它,我就无法知道您要对NewExcelWorkSheet做什么,因为结果不会保持一致。

要创建所选文本的字符串列表:

List<string> myStringList = new List<string>;
if(checkBox7.Checked)
    myStringList.Add(checkBox7.Text);
if(checkBox8.Checked)
    myStringList.Add(checkBox8.Text);

等。然后,完成所有 17 个复选框后,对列表执行每次迭代以将其移动到 NewExcelWorksheet 中。请注意,您可以将其直接传输到NewExcelWorkSheet中,当然,完全跳过列表。