में परिभाषित नियंत्रणों के उदाहरण बनाएं मेरे पास xaml में परिभाषित नियंत्रण है जो काफी हद तक गुण सेट के साथ कोड में पुन: पेश करना मुश्किल है। क्या मैं xaml में नियंत्रण को परिभाषित कर सकता हूं और किसी भी तरह के कोड में इसके उदाहरण बना सकता हूं?WPF xaml
WPF xaml
उत्तर
एक अन्य विकल्प के साथ एक्स एक संसाधन के रूप नियंत्रण बनाने के लिए है: साझा = "false" संपत्ति आप प्रत्येक संकल्प पर नए उदाहरणों प्राप्त करना चाहते हैं:
<UserControl.Resources>
<Rectangle x:Key="MyControl" x:Shared="False"
...
/>
</UserControl.Resources>
कोड में:
var myNewCtrl = this.FindResource("MyControl") as Rectangle;
// use control
ओह, +1! मुझे कभी याद नहीं है 'एक्स: साझा' :-) –
सुंदर। धन्यवाद – Aks
क्या आपने उपयोगकर्ता नियंत्रण के रूप में नियंत्रण बनाने पर विचार किया है?
कोई बुरा विचार नहीं है, लेकिन यदि आप बार-बार 'टेक्स्टबॉक्स' पर विशिष्ट गुण सेट करना चाहते हैं तो यह अधिक हो सकता है। –
हाँ आप XamlReader का उपयोग करके कर सकते हैं: http://msdn.microsoft.com/en-us/library/system.windows.markup.xamlreader.aspx। अपने xaml मार्कअप युक्त स्ट्रीम को पास करने वाली स्थिर विधि लोड का उपयोग करें। आप एक ऑब्जेक्ट प्राप्त करते हैं जो आपका नियंत्रण उदाहरण है।
आप Xaml शैली का उपयोग करके किसी भी गुण को सेट कर सकते हैं, और उस शैली को फिर से लागू कर सकते हैं - या तो सीधे नियंत्रण के एक अलग उदाहरण पर, या एक अलग शैली के आधार के रूप में। उत्तरार्द्ध आपको अपनी सामान्य गुणों को निर्दिष्ट करने की अनुमति देगा लेकिन फिर भी, प्रत्येक नियंत्रण के लिए अलग-अलग दृश्य सेटिंग्स हैं।
तो, बजाय यह पुन: पेश करने की कोशिश कर के:
<TextBlock Width="100" Height="40" FontSize="10" ClipToBounds="True" />
... एक साझा संसाधन फ़ाइल में इस परिभाषित:
<Style TargetType="TextBlock" x:Key="myStyle">
<Setter Property="Width" Value="100" />
<Setter Property="Height" Value="40" />
<Setter Property="FontSize" Value="10" />
<Setter Property="ClipToBounds" Value="True" />
</Style>
... और फिर मार्कअप में इस का उपयोग करें:
<TextBlock Style="{StaticResource myStyle}" />
वही सिद्धांत किसी भी नियंत्रण और गुणों के किसी भी सेट पर लागू होता है।
शैली वास्तव में एक अच्छा समाधान है। आप कस्टम/उपयोगकर्ता नियंत्रण को लक्षित करने के लिए शैलियों को भी बना सकते हैं। आप केवल शैलियों में निर्भरता प्रॉपर्टी सेट कर सकते हैं। –
- 1. WPF/XAML
- 2. सशर्त XAML (WPF)
- 3. WPF: XAML बनाम कोड -12
- 4. xaml
- 5. WPF XAML में लोडिंग ग्राफ़िक कैसे बनाएं?
- 6. XAML
- 7. XAML
- 8. XAML
- 9. XAML
- 10. WinRT XAML
- 11. कैसे XAML
- 12. केवल XAML
- 13. XAML
- 14. XAML
- 15. Xaml
- 16. XAML
- 17. XAML
- 18. XAML
- 19. XAML
- 20. XAML
- 21. XAML
- 22. XAML
- 23. XAML
- 24. XAML
- 25. XAML
- 26. XAML
- 27. XAML
- 28. XAML
- 29. XAML
- 30. XAML
नियंत्रण केवल XAML में परिभाषित नहीं किया जा सकता है, आपके पास अभी भी इसके लिए एक कोड होगा, हालांकि कुछ मामलों में कोड में केवल 'प्रारंभिक कॉम्पोनेंट() 'पंक्ति हो सकती है। – Snowbear
मैं इसे समझता हूं। लेकिन उदाहरण के लिए कहें कि मेरे पास xaml में परिभाषित टेक्स्टबॉक्स है। क्या मैं कोड में समान गुणों के साथ एक ही टेक्स्टबॉक्स के उदाहरण बना सकता हूं? – Aks
क्या आपको इसे कोड में बनाने की ज़रूरत है, या क्या आपको बस उन संपत्ति मूल्यों को दोहराने में सक्षम होना चाहिए? उत्तरार्द्ध करने के तरीके के बारे में एक सरल उदाहरण के लिए मेरा उत्तर देखें ... –