2012-04-23 20 views
9

में नहीं आती मैं एक लिस्टबॉक्स अद्यतन करने के लिए निम्नलिखित कोड का उपयोग कर रहा है, यह एक वेब सेवा-मूल्य की उम्मीद रेंज

client.userKeywordsCompleted += new EventHandler<userKeywordsCompletedEventArgs>(client_userKeywordsCompleted); 
client.userKeywordsAsync(); 

से एक सूची प्राप्त करने का उपयोग कर -

void client_userKeywordsCompleted(object sender, userKeywordsCompletedEventArgs e) 
    { 

     string result = System.Convert.ToString(e.Result); 


     for (int i = 0; i < e.Result.Count; i++) 
     { 

      ListBoxItem lbitem = new ListBoxItem(); 

      lbitem.Name = "lb_" + i; 
      lbitem.Content = e.Result[i]; 

      lbitem.AddHandler(UIElement.MouseLeftButtonDownEvent, new MouseButtonEventHandler(ListBoxItem_DoubleClickEvent), true); 

      listBox1.Items.Add(lbitem); 

     } 

यह ठीक काम करता है , जब मैं चाइल्ड विंडो लोड करता हूं तो इसका उपयोग करता हूं, इसलिए सूची बॉक्स डेटाबेस से सूची प्राप्त करता है, हालांकि जब कोई उपयोगकर्ता सूची बॉक्स में किसी आइटम का चयन करता है, तो उसके पास चयनित आइटम को संपादित करने का विकल्प होता है। तो एक संपादन जगह पर है, एक संपादन बटन है, जो डेटाबेस में तालिका में कॉलम अद्यतन करता है। तो फिर बटन पर क्लिक करें, मैं फिर से नए क्रेडेंशियल्स के साथ सूची बॉक्स को अपडेट करने के लिए उपर्युक्त कोड को कॉल कर रहा हूं। हालांकि इस त्रुटि bcak लाता है -

"Value does not fall within the expected range." 

मैं क्यों नहीं बटन पर क्लिक वेब विधि कॉल कर सकते हैं, यह सब कर रहा है के रूप में लिस्टबॉक्स ताज़ा है ???

उत्तर

11

यह इस तथ्य के कारण हो सकता है कि आप पृष्ठ पर एक ही नाम के साथ ListBoxItem जोड़ने की कोशिश कर रहे हैं।

यदि आप नए पुनर्प्राप्त मूल्यों के साथ सूची बॉक्स की सामग्री को रीफ्रेश करना चाहते हैं तो आपको पहले सूची बॉक्स की सामग्री को मैन्युअल रूप से हटा देना होगा, अन्यथा आपका लूप फिर से lb_1 बनाने और उसी सूची में जोड़ने का प्रयास करेगा। इसी तरह की एक समस्या यह है कि हुई Silverlight: Value does not fall within the expected range exception

चियर्स के लिए यहाँ पर

देखो,

+0

तो आप क्या सुझाव देंगे कि मैंने किया? मैंने उस जवाब पर एक नज़र डाली, मुझे लगता है कि आपने जो कहा वह समस्या है। – Ebikeneser

+0

मैं वास्तव में बटन क्लिक पर सूची बॉक्स आइटम्स में एक स्पष्ट फ़ंक्शन जोड़ता हूं, यह रीफ्रेश किए विकल्पों के साथ पहला टीएम काम करता है, हालांकि अगर मैं इसे फिर से करता हूं तो सूची बॉक्स रीफ्रेश नहीं होता है, क्या आपको पता है कि यह क्यों है? – Ebikeneser

+0

डिबगिंग के लिए केवल यह सुनिश्चित करने के बाद कि आइटम की सूची खाली है। शायद आपको कॉलबैक के भीतर स्पष्ट डालने पर विचार करना चाहिए। – Stainedart

1

मैं एक totaly अलग कारण ही नोटिस विजुअल स्टूडियो 2008, जबकि से "मान की उम्मीद सीमा के भीतर नहीं आती" से था उपयोग करने का प्रयास कर रहे हैं: टूल्स -> विंडोज एम्बेडेड सिल्वरलाइट टूल्स -> विंडोज एम्बेडेड प्रोजेक्ट के लिए सिल्वरलाइट अपडेट करें।

कई ohurs खर्च करने के बाद मुझे पता चला है कि समस्या यह है कि वहाँ एक संसाधन फ़ाइल नहीं थी और अद्यतन उपकरण .RC फ़ाइल

के लिए वजह समाधान संसाधन फ़ोल्डर एक .RC में जोड़ने के लिए है लग रहा था फ़ाइल और इससे पूरी तरह से काम करता है। मुझे उम्मीद है कि यह किसी को वहां मदद करेगा

0

हाल ही में डब्ल्यूएसएस 3.0 के मामले में मुझे एक ही समस्या का सामना करना पड़ा। यह कॉलम के कारण कोड से प्राप्त किया गया था क्योंकि WSS सूची में मौजूद नहीं था।

संबंधित मुद्दे