我需要在失去焦点时验证控件输入。通常我会使用Validating事件。然而,该过程涉及根据超过280,000个邮政编码的本地数据库检查输入的数据。我希望这种验证是异步发生的,因为在用户输入剩余的表单数据之前不需要等待它。
我的第一个想法是将验证逻辑封装在自己的方法中,将委托绑定到它并在控制验证事件中使用BeginInvoke()和EndInvoke,因为验证的可能结果不会要求Cancel = True(它们将简单改变控制前色。)
有没有更好的方法?
答案 0 :(得分:3)
您可能需要查看BackgroundWorker
答案 1 :(得分:1)
您可能会发现BackgroundWorker是一种很好的方法。
要考虑的一件事是用户在验证运行完毕之前尝试提交表单。