KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I have been playing round with the Async CTP this morning and have a simple program with a button and a label . Click the button and it starts updating the label , stop the button it stops writing to the label . However, I'm not sure how to reset the CancellationTokenSource so that I can restart the process. My code: public partial class MainWindow : Window { CancellationTokenSource cts = new CancellationTokenSource(); public MainWindow() { InitializeComponent(); button.Content = "Start"; } async Task DoWork(CancellationToken cancelToken) { int i = 0; while (!cancelToken.IsCancellationRequested) { label.Content = i++.ToString(); await TaskEx.Delay(50, cancelToken); } } private void Button_Click(object sender, RoutedEventArgs e) { if (button.Content == "Start") { button.Content = "Stop"; DoWork(cts.Token); } else { button.Content = "Start"; cts.Cancel(); } } }
Tags (comma-separated)
Save Edits
Cancel