मैं WPF में एक बटन की डिफ़ॉल्ट टेक्स्टवैपिंग शैली कैसे बदलूं?डब्ल्यूपीएफ बटन टेक्स्टव्रप शैली
का स्पष्ट समाधान:
<Style x:Key="MyButtonStyle" TargetType="{x:Type Button}">
<Setter Property="TextWrapping" Value="Wrap"></Setter>
</Style>
काम नहीं करता, क्योंकि Textwrapping, एक settable संपत्ति यहां नहीं है जाहिरा तौर पर।
अगर मैं कोशिश:
<Style x:Key="MyButtonStyle" TargetType="{x:Type Button}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<TextBlock Text="{Binding}" Foreground="White" FontSize="20" FontFamily="Global User Interface" TextWrapping="Wrap"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
मैं सिर्फ संकलक से एक बेकार प्रतिक्रिया मिल:
Error 5 After a 'SetterBaseCollection' is in use (sealed), it cannot be modified.
निकाला जा रहा है ControlTemplate टैग त्रुटि रहता है।
निम्नलिखित प्रयास कोई दूसरी त्रुटि पैदावार:
<Setter Property="TextBlock">
<TextBlock Text="{Binding}" Foreground="White" FontSize="20" FontFamily="Global User Interface" TextWrapping="Wrap"/>
</Setter>
Error 5 The type 'Setter' does not support direct content.
मैं देख रहा हूँ मैं व्यक्तिगत रूप से प्रत्येक बटन के लिए textwrapping सेट कर सकते हैं कि, लेकिन वह बहुत मूर्खतापूर्ण है। मैं इसे शैली के रूप में कैसे कर सकता हूं? जादू शब्द क्या हैं?
और भविष्य के संदर्भ के लिए, मुझे इन जादू शब्दों की एक सूची कहां मिल सकती है, इसलिए मैं इसे अपने आप कर सकता हूं? एमएसडीएन प्रविष्टि बहुत बेकार है जब मैं यह पता लगाने की कोशिश करता हूं कि कौन से गुण सेटटर द्वारा सेट किए जा सकते हैं।
नहीं, जादुई शब्द हैं। इस मामले में, जादू शब्द "टेम्पलेट बाइंडिंग सामग्री" थे। मुझे बताने के लिए धन्यवाद। – mmr