gpt4 book ai didi

c# - 在 UI 线程上下文中执行代码的正确方法?

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

<分区>

我想从另一个线程更新 UI
我有很多选择可以在 UI 线程上下文中执行代码:

1:使用 BeginInvoke/EndInvoke 方法:
伪代码

public delegate int AddItem(object Item);
public Form1 F = (Form1)Application.OpenForms["Form1"];
private static async DoSomething()
{
AddItem ad = new AddItem(F.ls1.Items.Add);
await Task.Run(() =>F.EndInvoke(F.BeginInvoke(add,"NewItem")));
}


2: 使用 Progress/IProgress :我不知道如何实现这样的东西

还有其他方法吗?哪个是首选方式?

注意:调用任务的线程不是同一个 UI 线程,所以 Progress 在这里可能不起作用

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