我尝试过覆盖 OnLoad 事件,但在此方法完成之前已绘制表单。我正在调用 base.OnLoad 方法。但是,在活动期间,表格正在部分绘制(看到工件)。我注意到这一点是因为我正在访问数据库并且需要一些时间。在事件中,我正在获取一些数据并将其绑定到表单的控件。请不要告诉我使用单独的线程。为简单起见,我宁愿在加载数据时只显示一个繁忙的光标。
更新:
好吧,我想你们已经说服了我。我将使用一个单独的线程。我不知道 BackgroundWorker,它很容易实现。现在我的表单正在快速加载。然后,突然之间,我的组合框被填充了。但是,我想阻止用户在组合被填充之前点击它们。使用 Winforms 执行此操作的最佳方式/标准方式是什么?有没有办法在后台工作人员完成之前关闭表单中的输入事件?