.net कोड से स्टोरीबोर्ड को रोकने और पुनरारंभ करने का उचित तरीका क्या है?एक WPF स्टोरीबोर्ड को पुनरारंभ करना
मैं कोशिश कर रहा हूँ...
myStory.Stop(this);
उम्मीद है कि .Begin को बाद में एक कॉल (this); शून्य पर टाइमलाइन से पुनरारंभ होगा, लेकिन इसके बजाय, स्टोरीबोर्ड ठीक से उठाता है जहां इसे रोक दिया गया था।
मैं
.Remove(this);
की कोशिश की है और मैं
.Seek(TimeSpan.Zero);
जो भी काम नहीं किया की कोशिश की।
अधिक जानकारी ... यहां मेरा स्टोरीबोर्ड नमूना है।
<Storyboard x:Key="overlay">
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetName="textone" Storyboard.TargetProperty="(UIElement.Opacity)">
<SplineDoubleKeyFrame KeyTime="00:00:03.0" Value="0"/>
<SplineDoubleKeyFrame KeyTime="00:00:03.0" Value="1"/>
<SplineDoubleKeyFrame KeyTime="00:00:06.0" Value="1"/>
<SplineDoubleKeyFrame KeyTime="00:00:06.0" Value="0"/>
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetName="texttwo" Storyboard.TargetProperty="(UIElement.Opacity)">
<SplineDoubleKeyFrame KeyTime="00:00:07.0" Value="0"/>
<SplineDoubleKeyFrame KeyTime="00:00:07.0" Value="1"/>
<SplineDoubleKeyFrame KeyTime="00:00:10.0" Value="1"/>
<SplineDoubleKeyFrame KeyTime="00:00:10.0" Value="0"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
तो textone में पाठ चलाता है, और यदि आप जल्दी से स्क्रीन बंद करें, और स्क्रीन पर लौटने, texttwo, वास्तव में एक नव शुरू कर दिया स्टोरीबोर्ड से अधिक निभाता है। तो मूल (पहली स्क्रीन से) स्टोरीबोर्ड अभी भी चारों ओर और खेल रहा है, भले ही मैंने हटा दिया हो और इसे रोक दिया हो।
शायद यह मेरा सेटअप है। यहां थोड़ी अधिक जानकारी दी गई है। मेरे पास स्टोरीऑवरले स्टोरीबोर्ड संपत्ति के साथ बेसक्लास है। एक बाल वर्ग के सीटीआर में, मैं स्टोरीबोर्ड के रूप में एक कहानीऑवरले = TryFindResource ("storyId") करता हूं; बाद में, मैं कहानी देख रहा हूं अगर कहानी ओवरले! = शून्य; {storyOverlay.Remove (यह); } क्या यह कुछ भी बदलता है? – ScottCate