/ / C # импортира колона за Excel в падащото меню ComboBox - c #, windows, winforms, excel

C # импортира колона за Excel в падащото меню ComboBox - c #, windows, winforms, excel

Имам разпространен лист със стойности, които бих искалискам да попълните в падащите полета в Windows формуляри с помощта на C #. Някои от тези стойности съдържат 100 "записи и не искам да ги попълвам ръчно или да ги вгражда в изходния код.

Също така трябва да мога да добавя и премахва стойности от полето за комбота след като бъдат въведени, затова вярвам, че това изключва обвързването му с набор от данни.

Как би направил това?

Отговори:

0 за отговор № 1

Възнамерявате да въведете много стойности в комбо-кутия? Ако получите Excel стойности в DataTable, след това въведете стойност използвайки foreach цикъл.

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

Ако се борите с Excel импортирате, след това добавете коментар към мен отново.


0 за отговор № 2

Можете да използвате библиотеката на Excel от тази връзка http://code.google.com/p/excellibrary/, Всъщност има пример за код, предоставен на тази страница, показва как да четете от Excel файл.

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);
}

Просто повторете в колоната си за Excel и добавете елементите в полето за комбо. Добре е да добавите 100, но няма да е много ясно.

Ако не искате да твърдите кода на елементите си и да ги използвате като външен източник, препоръчвам да използвате XML формат. По-лесно е да се анализира, много по-ясна и лека.