2013-01-06 17 views
12

फायरिंग नहीं है मुख्य विंडो बंद करने से पहले मेरे पास एक एनीमेशन है, जैसे कि निम्न कोड दिखाता है। समस्या StoryBoard.Completed फायरिंग नहीं है। कोई संकेत क्या यह पैदा कर रहा है?डब्ल्यूपीएफ स्टोरीबोर्ड। पूर्ण घटना

story.Completed += (o, s) => Close(); 
story.Begin(this); 

मैं इस व्यवहार के लिए कारण लगता है कि पूरे हैंडलर वास्तव में एक घड़ी से जुड़ा हुआ है है:

कोड

DoubleAnimation dblAnimX = new DoubleAnimation(1.0, 0.0, new Duration(TimeSpan.FromSeconds(0.5))); 
dblAnimX.SetValue(Storyboard.TargetProperty, this); 

DoubleAnimation dblAnimY = new DoubleAnimation(1.0, 0.0, new Duration(TimeSpan.FromSeconds(0.5))); 
dblAnimY.SetValue(Storyboard.TargetProperty, this); 

Storyboard story = new Storyboard(); 
Storyboard.SetTarget(dblAnimX, this); 
Storyboard.SetTarget(dblAnimY, this); 
Storyboard.SetTargetProperty(dblAnimX, new PropertyPath("RenderTransform.ScaleX")); 
Storyboard.SetTargetProperty(dblAnimY, new PropertyPath("RenderTransform.ScaleY")); 

story.Children.Add(dblAnimX); 
story.Children.Add(dblAnimY); 
story.Begin(this); 

story.Completed += (o, s) => { this.Close(); }; 

उत्तर

38

शुरू कॉल करने से पहले पूरे हैंडलर जोड़ें ऑब्जेक्ट, जो शुरुआत के दौरान बनाया गया है। Completed में टिप्पणी अनुभाग देखें: इस ईवेंट हैंडलर एक समय, यह वास्तव में इस समय के लिए बनाई गई घड़ी के साथ पंजीकृत के साथ जुड़े होने के लिए प्रकट होता

हालांकि। अधिक जानकारी के लिए, समय घटनाक्रम अवलोकन देखें।

+0

धन्यवाद! यह अब काम करता है –

+1

इसके लिए धन्यवाद! इससे मुझे मदद मिली, और मुझे खुद को सिर पर मारने और "डूह" कहने की भी आवश्यकता थी। :-) –

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