/ / सी # कॉम्बो बॉक्स ड्रॉपडाउन मूल्यों में एक एक्सेल कॉलम आयात करें - सी #, विंडोज, विनफॉर्म, एक्सेल

कॉम्बोबॉक्स ड्रॉपडाउन मूल्यों में सी # एक एक्सेल कॉलम आयात करें - सी #, विंडोज, विनफॉर्म, एक्सेल

मेरे पास मूल्यों के साथ एक फैल शीट है जो मैं करूंगाC # का उपयोग करके विंडोज फॉर्म में ड्रॉप डाउन बॉक्स को भरना पसंद है। इनमें से कुछ मानों में 100 प्रविष्टियाँ हैं और मैं उन्हें हाथ से नहीं भरना चाहता या उन्हें स्रोत कोड में एम्बेड नहीं करना चाहता।

मुझे कॉम्बो-बॉक्स से मान जोड़ने और हटाने में सक्षम होने की आवश्यकता है, एक बार जब वे प्रवेश कर जाते हैं, तो मेरा मानना ​​है कि यह नियम इसे डेटा सेट से बाध्य करता है।

कोई ऐसा कैसे करेगा?

उत्तर:

जवाब के लिए 0 № 1

आप कॉम्बो-बॉक्स में कई मानों का इनपुट करते हैं? यदि आप DataTable में एक्सेल मान प्राप्त करते हैं, तो foreach लूप का उपयोग करके मान डालें।

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

यदि आप एक्सेल आयात से जूझ रहे हैं, तो मेरे साथ फिर से टिप्पणी जोड़ें।


जवाब के लिए 0 № 2

आप इस लिंक से एक्सेल लाइब्रेरी का उपयोग कर सकते हैं http://code.google.com/p/excellibrary/। इस पृष्ठ पर वास्तव में एक उदाहरण कोड प्रदान किया गया है, यह दर्शाता है कि एक्सेल फ़ाइल से कैसे पढ़ा जाए।

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

बस अपने एक्सेल कॉलम के माध्यम से पुनरावृत्त करें और कॉम्बो-बॉक्स में तत्वों को जोड़ें। यह 100 जोड़ना ठीक है लेकिन यह जीत गया "बहुत स्पष्ट नहीं है।

यदि आप अपने तत्वों को हार्डकोड नहीं करना चाहते हैं और उन्हें एक बाहरी स्रोत के रूप में चाहते हैं, तो मैं XML-प्रारूप का उपयोग करने की अनुशंसा करता हूं। यह पार्स करना आसान है, बहुत अधिक स्पष्ट और हल्का है।