これは、テキスト アニメーション効果を作成するために MainPage.xaml.cs で行ったことです。
private readonly double TEXT_TIMER = 30.0;
private int index;
private void updateText(String text)
{
_text = text;
index = 0;
MainTextBlock.Text = "";
_textTimer.Tick += _textTimer_Tick;
_textTimer.Interval = TimeSpan.FromMilliseconds(TEXT_TIMER);
_textTimer.Start();
}
private void _textTimer_Tick(object sender, EventArgs e)
{
if (index < _text.Length)
{
string s = _text[index].ToString();
MainTextBlock.Text += s;
index++;
}
else
{
_textTimer.Stop();
}
}
NextButton
MainPage.xaml には、テキスト/文字列のリストとボタンもあります。メソッドはのupdateText
クリック イベントにありNextButton
、テキスト/文字列のリストからテキストを取得し、アニメーション効果を使用してテキストブロックを更新します。
しかし、 をクリックし続けるとNextButton
、 の値TEXT_TIMER
が減少し、アニメーション効果が急速に発生し、アニメーションがなくなる (つまり、テキストが効果なしでテキストブロックに表示される) ことに気付きました。
なぜこれが起こっているのか、どうすれば修正できるのか、誰にもわかりませんか?
編集:テキストブロックが更新された後にタイマーを停止するコードを含めましたが、可能性のある複数の Tick コールバックを解決することを期待していますが、まだ何も解決していません。