gpt4 book ai didi

C# 返回时调用方法

转载 作者:行者123 更新时间:2023-11-30 20:24:56 25 4
gpt4 key购买 nike

我有一个多线程 C# 应用程序,其中按下按钮 (Button homeBut) 会启动一个执行给定方法的新线程。单击时,我禁用按钮并启动线程。

要重新启用该按钮,我目前在该方法的末尾执行此操作:

if (InvokeRequired)//if accessing from different thread
{
this.Invoke(new Action<Button>(enableButton), new object[] { homeBut });
}

该方法可以从多个位置返回,我希望避免将此代码片段复制并粘贴到 4 个不同的位置,以确保按钮始终重新启用。

有没有一种方法可以在方法返回时执行这样的代码块,这样我只写一次?

最佳答案

I was hoping to avoid copying and pasting this code snippet into 4 different places to ensure the button is always re-enabled.

好吧,方法怎么样,这通常是它们的用途。

void EnableHomeButton()
{
if (InvokeRequired)//if accessing from different thread
{
this.Invoke(new Action<Button>(enableButton), new object[] { homeBut });
}
else
{
enableButton(homeBut);
}
}

同时避免创建自己的线程。开始Tasks .

DisableButton();
Task.Factory.StartNew(DoWhatEver).ContinueWith(EnableHomeButton);

关于C# 返回时调用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25405074/

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