C#- 将列从 Excel 拉到复选框列表
C#- Pull column from Excel to a Checkbox list
我正在尝试将信息提取到 excel 的列中,并以 Windows 形式将其显示在复选框列表中。
现在我在 excel sheet 中有一个应用程序名称列表,我正在尝试将单元格值放入字符串数组并将其附加到清单框。
这是我的表单 class,它处理 windows 表单:
public Form1()
{
InitializeComponent();
//FilesList filesList = new FilesList();
//AppList testApp = new AppList();
//filesList.DirSearch(@"C:\Users\dbell\Downloads\");
Excel e = new Excel(@"SupportedApps.xlsx", 1);
String[] list = e.ReadApplication();
try
{
checkedListBox1.Items.AddRange(list);
}
catch (ArgumentNullException F)
{
Console.WriteLine("Error: " + F.ToString());
}
}
下面是我试图创建一个方法的拙劣尝试,该方法returns 来自我工作的字符串数组sheet:
public string[] ReadApplication()
{
int column = 0;
int row = 1;
int stringNum = 0;
string[] result = null;
try
{
while (ws.Cells[row, column].Value2 != null)
{
result[stringNum] = ws.Cells[row, column].Value2;
row++;
stringNum++;
}
}
catch(NullReferenceException e)
{
Console.WriteLine("Error: " + e.ToString());
}
return result;
}
目前我不断收到空结果。我已经能够将其作为 CSV 文件使用,但是我只想使用一个 excel sheet。
提前致谢
尝试使用 https://www.nuget.org/packages/ClosedXML/ 库。
ClosedXML.Excel.IXLWorkbook workbook = new XLWorkbook(@"D:\Test.xlsx");
var worksheet = workbook.Worksheets.First();
int column = 1;
int row = 1;
int stringNum = 0;
List<string> result = new List<string>();
try
{
while (worksheet.Cell(row, column).Value != null && row < worksheet.RowCount())
{
result.Add(worksheet.Cell(row, column).Value.ToString());
row++;
stringNum++;
}
}
catch (NullReferenceException e)
{
Console.WriteLine("Error: " + e.ToString());
}
我正在尝试将信息提取到 excel 的列中,并以 Windows 形式将其显示在复选框列表中。
现在我在 excel sheet 中有一个应用程序名称列表,我正在尝试将单元格值放入字符串数组并将其附加到清单框。
这是我的表单 class,它处理 windows 表单:
public Form1()
{
InitializeComponent();
//FilesList filesList = new FilesList();
//AppList testApp = new AppList();
//filesList.DirSearch(@"C:\Users\dbell\Downloads\");
Excel e = new Excel(@"SupportedApps.xlsx", 1);
String[] list = e.ReadApplication();
try
{
checkedListBox1.Items.AddRange(list);
}
catch (ArgumentNullException F)
{
Console.WriteLine("Error: " + F.ToString());
}
}
下面是我试图创建一个方法的拙劣尝试,该方法returns 来自我工作的字符串数组sheet:
public string[] ReadApplication()
{
int column = 0;
int row = 1;
int stringNum = 0;
string[] result = null;
try
{
while (ws.Cells[row, column].Value2 != null)
{
result[stringNum] = ws.Cells[row, column].Value2;
row++;
stringNum++;
}
}
catch(NullReferenceException e)
{
Console.WriteLine("Error: " + e.ToString());
}
return result;
}
目前我不断收到空结果。我已经能够将其作为 CSV 文件使用,但是我只想使用一个 excel sheet。
提前致谢
尝试使用 https://www.nuget.org/packages/ClosedXML/ 库。
ClosedXML.Excel.IXLWorkbook workbook = new XLWorkbook(@"D:\Test.xlsx");
var worksheet = workbook.Worksheets.First();
int column = 1;
int row = 1;
int stringNum = 0;
List<string> result = new List<string>();
try
{
while (worksheet.Cell(row, column).Value != null && row < worksheet.RowCount())
{
result.Add(worksheet.Cell(row, column).Value.ToString());
row++;
stringNum++;
}
}
catch (NullReferenceException e)
{
Console.WriteLine("Error: " + e.ToString());
}