ユーザーが特定のボタンをクリックすると開始するプログラムのタイマーを作成する必要があります。次に、カウントダウンをラベルに出力します
前もって感謝します
これは本番環境から引き出されたものなので、うまくいくと確信しています:
...
_Timer = new DispatcherTimer();
_Timer.Interval = TimeSpan.FromMilliseconds(125);
_Timer.Tick += new EventHandler(_Timer_Tick);
_Timer.IsEnabled = true;
_Timer.Start();
...
void _Timer_Tick(object sender, EventArgs e)
{
try {
...Do your thing here
} catch (Exception x){
Debug.WriteLine("Error: "+x);
}
}
は名前空間DispatcherTimer
にあります。System.Windows.Threading
このようなものが動作するはずです:
public partial class MainWindow : Window
{
int count = 0;
System.Windows.Threading.DispatcherTimer tmr = new System.Windows.Threading.DispatcherTimer();
public MainWindow()
{
InitializeComponent();
tmr.Interval = new TimeSpan(0, 0, 2);
tmr.Tick += new EventHandler(tmr_Tick);
}
private void button1_Click(object sender, RoutedEventArgs e)
{
tmr.Start();
}
void tmr_Tick(object sender, EventArgs e)
{
label1.Content = count += 1;
}
private void button2_Click(object sender, RoutedEventArgs e)
{
tmr.Stop();
}
}