2011-03-02 7 views
11

मैं अपने डेटाग्रिड कॉलम को उस सूची में बांधने की कोशिश कर रहा था जहां एक कॉलम के लिए आइटम को इंडेक्सर का उपयोग करके पुनर्प्राप्त किया जा सकता था। इंडेक्सर प्रकार डेटटाइम है।कंस्ट्रक्टर में प्रॉपर्टीपाथ और पथ पैरामीटर

मैं कोड का उपयोग कर डेटाग्रिड कॉलम बना रहा हूं और सूची से मूल्य पुनर्प्राप्त करने के लिए बाध्यकारी बनाना चाहता था। XAML में पथ के रूप में लिखा जाएगा:

{बाइंडिंग पथ = मान [2011/01/01]}

लेकिन चूंकि मैं कोड में यह कर रहा हूँ के पीछे मैं की तरह एक PropertyPath का उपयोग कर पथ को परिभाषित करने की जरूरत है, इसलिए:

new Binding{ 
    Path = new PropertyPath("Values[01/01/2011]") 
} 

निर्माता है कि एक पथ और मानकों की एक सरणी लेता है के लिए एक और अधिभार नहीं है। documentation के अनुसार पैरामीटर इंडेक्सर्स के लिए उपयोग किए जाते हैं। लेकिन जब मैं

new Binding { 
    Path = new PropertyPath("Values", new DateTime(2011, 01, 01)) 
} 

बाध्यकारी पथ को हल नहीं कर सकता है। काफी उचित है, मैं यह नहीं कह रहा हूं कि इसे एक सूचकांक की तलाश करनी चाहिए। लेकिन अगर मैं के रूप में यह लिखें:

नई बाध्यकारी { पथ = नए PropertyPath ("मान []", नए दिनांक समय (2011, 01, 01)) }

तो DateTime.MinValue को पारित कर दिया है इंडेक्सर।

क्या कोई मुझे बता सकता है कि मैं निर्माता में पथ पैरामीटर का उपयोग कैसे करता हूं और मैं वास्तविक पथ में मेरे मूल्य पर ToString किए बिना इंडेक्सर्स से कैसे जुड़ सकता हूं?

उत्तर

13

इस MSDN आलेख के आधार पर, आपको यह इंगित करने के लिए "(0)" शामिल करना होगा कि पैरामीटर कहाँ रखा जाना चाहिए। तो निम्नलिखित कार्य करना चाहिए:

new Binding { 
    Path = new PropertyPath("Values[(0)]", new DateTime(2011, 01, 01)) 
} 
+0

इसके लिए धन्यवाद, ऐसा लगता है कि कोई जवाब नहीं था। – jjrdk

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