2012-10-22 12 views
44

सिल्वरलाइट में डिफ़ॉल्ट शैली के आधार पर शैली कैसे बनाएं?डिफ़ॉल्ट शैली के आधार पर शैली कैसे बनाएं?

<Style TargetType="{x:Type TextBox}" BasedOn="{StaticResource {x:Type TextBox}}"> 
    <Setter Property="Margin" Value="2" /> 
    <Setter Property="Padding" Value="2" /> 
</Style> 
+5

मैं इस सवाल पर आया कि डब्ल्यूपीएफ में इसे कैसे किया जाए इसका जवाब ढूंढ रहा हूं :) –

उत्तर

18

सुंदर ज्यादा एक ही:

उदाहरण के लिए, WPF में हम इसे पसंद करते हैं। बस शून्य से कम करें: अधिक स्पष्ट नामकरण के साथ टाइप करें।

<Style TargetType="TextBox" BasedOn="{StaticResource DefaultTextBoxStyle}"> 

अधिक जानकारी here in the docs। पीएस, यदि आपको डिफॉल्ट टेम्पलेट्स की आवश्यकता होती है, तो उदाहरण के लिए टेक्स्टबॉक्स आमतौर पर CoreStyles.xaml

एडेंडेंडम में टिप्पणियों में अनुरोध किया गया है, यदि आप उत्तर के पहले पढ़ने पर उलझन में हैं;

"आपको आधार शैली की आवश्यकता है, जो वास्तव में करना आसान है क्योंकि आप इसे एप्लिकेशन थीम में करना चाहते हैं जो टूलकिटस्टाइल.एक्सएएमएल, एसडीकेटीटील्स.एक्सएएमएल, कोरस्टाइल.एक्सएएमएल आदि जैसी फाइलें बनाता है। ।, आप एक नामित शैली बनाने के लिए की जरूरत है कौन सा है, जहां जवाब में नाम "

+2

लेकिन अगर मैं कस्टम नियंत्रण की डिफ़ॉल्ट शैली का उत्तराधिकारी चाहता हूं (विकसित मेरे द्वारा)? – ZuTa

+1

शायद मेरा प्रश्न स्पष्ट रूप से नहीं है .. – ZuTa

+0

ओह, तो बस अपने आप के साथ फ़ील्ड को प्रतिस्थापित करें। DefaultTextBoxStyle की बजाय आपकी स्टाइल टेम्पलेट आदि के साथ प्रतिस्थापित करें, ठीक है? –

11

से आया डिफ़ॉल्ट शैली के आधार पर एक शैली बनाने के लिए है, तो डिफ़ॉल्ट नामित शैली के आधार पर शैली बनाने (http://weblogs.asp.net/lduveau/silverlight-how-to-inherit-from-an-implicit-style)

<Style x:Key="DefaultCustomControlStyle" TargetType="local:CustomControl"> 
    <Setter Property="Padding" Value="2" /> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate TargetType="local:CustomControl"> 
       <ContentPresenter /> 
      </ControlTemplate> 
     </Setter.Value> 
    </Setter> 
</Style> 
<Style TargetType="local:CustomControl" BasedOn="{StaticResource DefaultCustomControlStyle}" /> 
संबंधित मुद्दे