मैं वर्तमान में एक WPF उपयोगकर्ता नियंत्रण में काम कर रहा हूं (मेरी एक्सएएमएल फ़ाइल का मूल तत्व "UserControl" है), जो मुझे पता है कि एक विंडो के अंदर होस्ट किया जा रहा है। मैं डेटा बाध्यकारी का उपयोग कर विंडो की एक संपत्ति का उपयोग कैसे कर सकता हूं?डब्ल्यूपीएफ डेटा बाइंडिंग के "रिलेटिवसोर्स फाइंडएस्टर" क्या करता है?
क्या किसी को पता है कि क्यों बस
<Binding RelativeSource="{RelativeSource FindAncestor, AncestorType={x:Type Window}}" Path="..." />
काम नहीं करता है? मुझे प्राप्त त्रुटि संदेश है:
सिस्टम.Windows.Data चेतावनी: 4: संदर्भ 'रिलेटिवसोर्स FindAncestor, पूर्वज/टाइप' सिस्टम के साथ बाध्यकारी के लिए स्रोत नहीं मिल सकता है। Windows.Window ', पूर्वज एलवेल =' 1 ''।
संपादित करें: मैं आर्सेनमार्क के दृष्टिकोण पर भिन्नता का उपयोग करके समाप्त हुआ, इसलिए उसका जवाब स्वीकार कर लिया। हालांकि, मुझे अभी भी यह जानने में दिलचस्पी है कि FindAncestor "बस काम नहीं करता" क्यों है।
आपने कहा कि आपने उसका जवाब अलग किया है, क्या आप वास्तव में क्या पोस्ट कर सकते हैं? – Miles
ध्यान दें कि मैं इस समस्या का समाधान एमवीवीएम पैटर्न के संदर्भ में ढूंढ रहा था। खिड़की की संपत्ति जिसे मैं बांधना चाहता था वास्तव में विंडो के व्यूमोडेल की एक संपत्ति थी। – user200783
ArsenMkrt ने UserControl में एक संपत्ति बनाने और उस पर बाध्यकारी करने का सुझाव दिया, फिर बदले में (XAML में) इस संपत्ति को विंडो की वांछित संपत्ति पर बाध्यकारी। एमवीवीएम पैटर्न के साथ, हालांकि, UserControl XAML में कभी नहीं दिखाई दिया, इसलिए दूसरा भाग संभव नहीं था। – user200783