C# 将字符串数组列表转换为excel文件时的奇怪行为
我有一个应用程序,它通过CAN网络收集的一些值创建一个字符串数组。我将字符串数组添加到listview中,然后将其添加到列表属性中,该属性被发送到一个方法,以将列表复制到excel文件中 我使用以下方法将数组添加到listview:C# 将字符串数组列表转换为excel文件时的奇怪行为,c#,list,winforms,excel-interop,C#,List,Winforms,Excel Interop,我有一个应用程序,它通过CAN网络收集的一些值创建一个字符串数组。我将字符串数组添加到listview中,然后将其添加到列表属性中,该属性被发送到一个方法,以将列表复制到excel文件中 我使用以下方法将数组添加到listview: ListViewItem item = new ListViewItem(UnitsCheckedArray); DCSDlv.Items.Add(item); UnitsChecked.Add(UnitsCheckedArray); 紧接着,我使用以下命令将同
ListViewItem item = new ListViewItem(UnitsCheckedArray);
DCSDlv.Items.Add(item);
UnitsChecked.Add(UnitsCheckedArray);
紧接着,我使用以下命令将同一数组添加到字符串[]列表中:
ListViewItem item = new ListViewItem(UnitsCheckedArray);
DCSDlv.Items.Add(item);
UnitsChecked.Add(UnitsCheckedArray);
这是将字符串数组添加到listview时的结果
我通过调用write to excel方法将数据写入UnitsChecked列表:
public void WriteToExcel(List<String[]> list)
{
int Row = GetFirstEmptyRow();
int Column = 1;
foreach(var item in list)
{
Column = 1;
foreach(var subItem in item)
{
excelWS.Cells[Row, Column] = subItem;
Column++;
}
Row++;
}
@菲利普。excel屏幕截图中的数据在每一行上都是相同的。在源数据中,行具有不同的数据。看起来您的
列表只包含ListView中的最后一项。显示填充要传递到WriteToExcel()
方法的列表的代码。数据不同。查看每个箭头序列号中的最后两个数字。在列表视图中,序列的最后两个数字是10、20、30、40、50、10、20、30、40、50。在excel文件中,序列号的所有行以50结尾。同样,对于列表视图中的SW零件号和HW零件号,有些末端为66AA,有些末端为63AA。在excel文档中,它们都以66AA结尾。@Jimi:listview和列表都是在backgroundworker完成的任务上同时填写的。因此,将数据添加到listview和添加到列表的位置是相同的。数据通过一个名为UnitsCheckedArray的变量添加,如上图所示。我已经在上面添加了在BG worker完成时运行的内容。正如您将看到的,列表和listview都应该有相同的数据,除非我遗漏了什么。这是可能的,也是我发布问题的原因。您没有添加修改UnitsCheckedArray
的代码。你能分享一下吗?