Ich habe den folgenden Code:
private void button1_Click(object sender, RoutedEventArgs e)
{
button1.IsEnabled = false;
var s = File.ReadAllLines("Words.txt").ToList(); // my WPF app hangs here
// do something with s
button1.IsEnabled = true;
}
Words.txt
eine Tonne von Worten hat , die ich in den s - Variable lesen, versuche ich zu nutzen zu machen async
und await
Schlüsselwörter in C # 5 verwendet , Async CTP Library
so dass die WPF - Anwendung nicht hängen. Bisher habe ich folgenden Code:
private async void button1_Click(object sender, RoutedEventArgs e)
{
button1.IsEnabled = false;
Task<string[]> ws = Task.Factory.FromAsync<string[]>(
// What do i have here? there are so many overloads
); // is this the right way to do?
var s = await File.ReadAllLines("Words.txt").ToList(); // what more do i do here apart from having the await keyword?
// do something with s
button1.IsEnabled = true;
}
Ziel ist es, die Datei nicht synchron, sondern asynchron zu lesen, um ein Einfrieren der WPF-App zu vermeiden.
Jede Hilfe wird geschätzt, danke!