Я делаю приложение, в которое хочу добавить эффект эффектной машинки без заморозки пользовательского интерфейса с помощью thread.sleep.
Так что я просто искал решение, чтобы найти асинхронную вещькоторый я показал в классе, и все просто сломалось, но я не понимаю, почему.Раньше он работал отлично, но теперь пользовательский интерфейс не работает, но текст содержит случайные символы
old (работает, но пользователь зависает):
private bool Write(string text)
{
foreach (char c in text)
{
Console.AppendText(c.ToString());
System.Threading.Thread.Sleep(5);
}
Console.AppendText(Environment.NewLine);
return true;
}
new (странные символы не замораживаются)ui):
private async void Write(string text){
foreach (char c in text)
{
Console.AppendText(c.ToString());
await Task.Delay(5);
}
Console.AppendText(Environment.NewLine);
}
Я надеялся, что новый код исправит зависание пользовательского интерфейса, что было сделано, но текст буквально не читается ... вот результат до и после:
до (используя старый код с заморозкой пользовательского интерфейса):
ModuleRemover is aan het kijken voor updates.
ModuleRemover is al de laatste versie! (versie 2.4)
после:
MMododuuleleReRemomvoveerr i is s aaanl hdeet l kaaitjsketen vveoorsr iuep! d(atveesrs.
ie 2.4)