2010-05-10 14 views
5

क्या कोई तरीका है, और किसी भी ट्यूटोरियल, लेख, नमूने जो रनटाइम पर बनाए गए प्रत्येक नए लेबल नियंत्रण को विस्टा/7 की तरह चमकते हैं?एक ग्लास सतह पर चमकने वाले लेबल नियंत्रण

धन्यवाद

+0

डब्ल्यूपीएफ को 'चमक' टैग बदल दिया क्योंकि इसकी संभावना अधिक है कि समाधान WPF आधारित होगा। –

+0

यह निश्चित रूप से WPF (शायद काफी मामूली रूप से) में पूरा किया जा सकता है, लेकिन क्या आप एक स्क्रीनशॉट संलग्न कर सकते हैं जो वांछित प्रभाव को बेहतर ढंग से दिखाता है? – Charlie

+0

एस/शॉट संलग्न अब –

उत्तर

3

नहीं संलग्न छवि देखने के लिए सक्षम इसलिए केवल अनुमान लगा क्या वांछित दिखता होना चाहिए किया जा रहा है, और - मैं एक त्वरित परीक्षण WPF में एक लेबल के टेम्पलेट में फेरबदल और के साथ एक दूसरे ContentPresenter जोड़ने के साथ बनाया एक ब्लरफेक्ट लागू किया गया।

लगता है कि दिखने के लिए आप जो खोज रहे हैं, यह एक तेज़ और आसान तरीका है।

<Style TargetType="{x:Type Label}"> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="{x:Type Label}"> 
        <Border BorderBrush="{TemplateBinding BorderBrush}" 
          BorderThickness="{TemplateBinding BorderThickness}" 
          Background="{TemplateBinding Background}" 
          Padding="{TemplateBinding Padding}" SnapsToDevicePixels="True"> 
         <Grid> 
          <ContentPresenter ContentTemplate="{TemplateBinding ContentTemplate}" 
           Content="{TemplateBinding Content}" ContentStringFormat="{TemplateBinding ContentStringFormat}" 
           HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" RecognizesAccessKey="True" 
           SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" 
           VerticalAlignment="{TemplateBinding VerticalContentAlignment}" 
           Opacity="0.5"> 

           <ContentPresenter.Effect> 
            <BlurEffect Radius="5" /> 
           </ContentPresenter.Effect> 
          </ContentPresenter> 
          <ContentPresenter ContentTemplate="{TemplateBinding ContentTemplate}" 
             Content="{TemplateBinding Content}" ContentStringFormat="{TemplateBinding ContentStringFormat}" 
             HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" RecognizesAccessKey="True" 
             SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" 
             VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/> 

         </Grid> 
        </Border> 
       <ControlTemplate.Triggers> 
      <Trigger Property="IsEnabled" Value="False"> 
       <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/> 
      </Trigger> 
     </ControlTemplate.Triggers> 
    </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 
+0

वाह, इसके लिए धन्यवाद। एक सवाल; मैं इस कोड को कब पेस्ट करूँगा? जाहिर है यह एक्सएएमएल फ़ाइल के अंदर कहीं होगा, लेकिन कहाँ? क्षमा करें, मैंने WPF का बहुत उपयोग नहीं किया है। लेकिन आज रात कुछ चीजें देखने के बाद, मुझे यह पसंद है! –

+0

संक्षिप्त उत्तर: व्यावहारिक होने और अपनी सामग्री को काम करने के लिए, इसे अपनी विंडो के संसाधन अनुभाग में पेस्ट करें। ... ... [यहाँ शैली डालें] ... लांग जवाब: संसाधन WPF में से निपटने के बारे में पढ़ें। – ThomasAndersson

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