gpt4 book ai didi

C#、Windows 窗体 : How to prevent firing of EventHandlers while data is retrieved from the backend

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

我在 Windows Forms 上有 40 多个控件(TextBox、RadioButton、CheckBoxes 等) .每个控件都注册了事件处理程序(TextChanged、CheckChanged 等)。

我想阻止这些事件在表单初始化期间触发。

在初始化之前取消订阅所有事件并稍后订阅是费力的。

实现此目标的最佳方法是什么?

最佳答案

我通常的愚蠢简单的解决方案是有一个由每个事件处理程序检查的表单属性。

例如

private bool _inhibit = false;

private void Initialise()
{
_inhibit = true;
try
{
// initialise fields
}
finally
{
_inhibit = false;
}
}

Then just check the state of _inhibit in each handler.

不确定是否有一种简洁的方法可以做到这一点。

关于C#、Windows 窗体 : How to prevent firing of EventHandlers while data is retrieved from the backend,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12511655/

25 4 0