में मैं वर्तमान में एक सी # आवेदन के विकास कर रहा हूँ।Enums और कॉम्बो बक्से सी #
मेरे द्वारा चुने गए महीने के पाने के लिए एक कॉम्बो बॉक्स के साथ एक enum का उपयोग करने की जरूरत है। मैं enum बनाने के लिए निम्नलिखित है:
enum Months
{
January = 1,
February,
March,
April,
May,
June,
July,
August,
September,
October,
November,
December
};
मैं तो का उपयोग कर बता गया आरंभ निम्नलिखित:
cboMonthFrom.Items.AddRange(Enum.GetNames(typeof(Months)));
कोड के इस बिट ठीक काम करता है लेकिन समस्या यह है कि जब मैं चयनित enum प्राप्त करने की कोशिश चयनित महीने
के लिए मूल्य मूल्य कॉम्बो बॉक्स मैं निम्नलिखित का इस्तेमाल किया है से प्रगणक पाने के लिए:
private void cboMonthFrom_SelectedIndexChanged(object sender, EventArgs)
{
Months selectedMonth = (Months)cboMonthFrom.SelectedItem;
Console.WriteLine("Selected Month: " + (int)selectedMonth);
}
हालांकि, जब मैं ऊपर यह एक त्रुटि कह प्रकार का एक पहला मौका अपवाद System.InvalidCastException
हुआ साथ आता है कोड को चलाने के लिए प्रयास करें।
मैंने क्या गलत किया है।
धन्यवाद किसी भी मदद के लिए उपलब्ध करा सकते हैं
बहुत बढ़िया है कि पूरी तरह से काम किया। धन्यवाद – Boardy
कॉम्बो बॉक्स में स्ट्रिंग डालना आवश्यक नहीं है और फिर उन्हें 'महीने' मानों में वापस पार्स करना आवश्यक नहीं है। बस 'महीने' मानों को स्वयं संग्रहित करें। – Timwi
आपको कॉम्बो बॉक्स में स्ट्रिंग मानों को स्टोर नहीं करना चाहिए और उन्हें गणना के रूप में पुनर्प्राप्त करना नहीं है। आप या तो कॉम्बो बॉक्स आइटम के रूप में enum मान जोड़ने या उन्हें स्ट्रिंग के रूप में मिलता है और गणना करने के लिए कन्वर्ट करना होगा। यही कारण है कि मैंने बाद वाले को करने का सुझाव दिया। – SadullahCeran