gpt4 book ai didi

c# - 无需挂起即可访问 UI

转载 作者:太空宇宙 更新时间:2023-11-03 10:40:04 25 4
gpt4 key购买 nike

我的程序中的一种方法连续访问 UI 元素并写入文件。这使我的 UI 卡住了一段时间。我需要在这段时间播放加载中的 gif 图片。但是图像只有在任务完成后才会出现。

如何更改此代码,以便我的应用不会挂起 UI?

private void BCreate_Click(object sender, RoutedEventArgs e)
{
ImgLoading.Visibility = Visibility.Visible;
Thread newWindowThread = new Thread(new ThreadStart(RegUser));
newWindowThread.Start();
}

private void RegUser()
{
this.Dispatcher.Invoke((Action)(() =>
{
//method body
.....
ImgLoading.Visibility = Visibility.Hidden;
}));
}

最佳答案

这样做:

private void RegUser()
{
this.Dispatcher.Invoke((Action)(() =>
{
ImgLoading.Visibility = Visibility.Visible;
}));
//method body
.....
this.Dispatcher.Invoke((Action)(() =>
{
ImgLoading.Visibility = Visibility.Hidden;
}));
}

只调用访问 UI 的方法。

考虑使用 InvokeAsync 来让事情发生,但不是立即发生。

关于c# - 无需挂起即可访问 UI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25710604/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com