/ / C # importiert eine Excel-Spalte in die ComboBox-Dropdown-Werte - c #, Windows, Winforms, Excel

C # importiert eine Excel-Spalte in die ComboBox-Dropdown-Werte - c #, Windows, Winforms, Excel

Ich habe eine Tabelle mit Werten, die ich hätteFüllen Sie Dropdown-Felder in Windows-Formularen mit C # aus. Einige dieser Werte enthalten 100 "Einträge, und ich möchte sie nicht von Hand ausfüllen oder in den Quellcode einbetten.

Ich muss auch in der Lage sein, Werte zu den Kombinationsfeldern hinzuzufügen und zu entfernen, sobald sie eingegeben sind. Ich glaube, dies schließt aus, dass sie an einen Datensatz gebunden werden.

Wie würde man das machen?

Antworten:

0 für die Antwort № 1

Du meinst viele Werte in die Combobox eingeben? Wenn Sie in DataTable Excel-Werte erhalten, geben Sie den Wert mithilfe der foreach-Schleife ein.

comboboxName.Items.Clear();
foreach(DataRow value in DataTableName.rows)
{
comboboxName.Items.Add(value["ColumnName"]);
}
comboboxName.selectedIndex = 0;

Wenn Sie mit Excel-Import zu kämpfen haben, fügen Sie mir erneut einen Kommentar hinzu.


0 für die Antwort № 2

Sie können die Excel-Bibliothek über diesen Link verwenden http://code.google.com/p/excellibrary/. Auf dieser Seite befindet sich ein Beispielcode, der zeigt, wie aus einer Excel-Datei gelesen wird.

using ExcelLibrary.SpreadSheet;

// open xls file
Workbook book = Workbook.Load(file);
Worksheet sheet = book.Worksheets[0];

// iterate with a proper condition, at the moment it will iterate with a given length!
for (int i = 0; i < length; i++)
{
comboBox.Items.Add(sheet.Cells[i,column_index].Value);
}

Durchlaufen Sie einfach Ihre Excel-Spalte und fügen Sie die Elemente in das Kombinationsfeld ein. Es ist in Ordnung, 100 hinzuzufügen, aber es wird nicht sehr klar sein.

Wenn Sie Ihre Elemente nicht hartcodieren und als externe Quelle verwenden möchten, empfiehlt sich die Verwendung eines XML-Formats. Es ist einfacher zu parsen, viel klarer und leichter.