2009-03-12 22 views
27

मेरी प्रोजेक्ट में मेरे पास एक ऑब्जेर्जेबल कोलेक्शन से जुड़ा एक डब्ल्यूपीएफ लिस्टबॉक्स है। हर बार जब मैं संग्रह में एक नया आइटम जोड़ता हूं तो वही आइटम स्वचालित रूप से सूची बॉक्स में जोड़ा जाता है। सूचीबॉक्स में आइटम प्रदर्शित करने के लिए मैं एक एक्सएएमएल डाटामैप्लेट का उपयोग करता हूं।आइटम को सूची बॉक्स में जोड़े जाने पर WPF डेटामैप्लेट को एनिमेट करें?

मैं जो करना चाहता हूं वह संग्रह/सूची बॉक्स में जोड़े जाने पर एक आइटम को एनिमेट कर सकता है। क्या यह किया जा सकता है? डेटामैप्लेट में एनीमेशन के रूप में शायद? मुझे लगता है कि मुझे इस एनिमेट को शुरू करने के लिए किसी भी तरह ट्रिगर की आवश्यकता है, लेकिन जब कोई नया आइटम/डेटामैप्लेट जोड़ा जाता है तो किस ट्रिगर को निकाल दिया जाता है?

उत्तर

25

मुझे लगता है कि फ्रेमवर्क एलिमेंट के लिए एक ईवेंट ट्रिगर। लोडेड रूटेड इवेंट काम कर सकता है। उदाहरण के लिए:

<DataTemplate DataType="{x:Type l:Foo}"> 
    <Button x:Name="Button" Content="{Binding Path=Bar}"> 
     <Button.Background> 
      <SolidColorBrush x:Name="ButtonBrush" Color="Tan" /> 
     </Button.Background> 
    </Button> 
    <DataTemplate.Triggers> 
     <EventTrigger RoutedEvent="FrameworkElement.Loaded" SourceName="Button"> 
      <BeginStoryboard> 
       <Storyboard> 
        <ColorAnimation Storyboard.TargetName="ButtonBrush" Storyboard.TargetProperty="Color" To="Red" /> 
       </Storyboard> 
      </BeginStoryboard> 
     </EventTrigger> 
    </DataTemplate.Triggers> 
</DataTemplate> 
+0

एक सपने की तरह काम करता है! धन्यवाद – TalkingCode

+0

अच्छी चाल, टीएनएक्स! =) –