返回首页

嘿,我如何才能称为"无模式"来回应你的消息的形式,而攻的形式,叫你执行其他任务?
示例代码:

报告代表=新的报告()
rep.Show(本);
RoutineX()
rep.Close()

我想,同时例行"RoutineX"运行,进行形式的"代表"的消息。

此致,

里卡多Tozzi。

回答

评论会员:游客 时间:2012/02/06
这是应当从UI类中删除功能的"业务逻辑"代码分离如果你创建一个类来管理所有的数据和功能,那么这个类可以简单地提出任何形式在系统中可以处理的事件。主要形式,将举行以这个数据管理对象的一个​​实例的引用,然后传递引用的报告,报告建设期间将配合从数据管理对象的事件。当RoutineX()内的数据管理对象的运行,它可以调用该报告的对象将响应的事件。当RoutineX()完成其过程,并返回,父窗体仍然可以简单地关闭你现在做的报告
圣保罗Zemek
评论会员:游客 时间:2012/02/06
。问题是,消息只处理后的实际消息处理在您的情况下,所有的消息将完成后的实际方法(可能是点击)进程。为了解决这个问题有很多技巧。使用一个线程(无论是间接地通过一项任务或一个完整的线程)运行RoutineX的将使实际的方法来"完成",使新邮件进行处理,同时执行。但是,那么你将需要处理线程同步问题。如果你想尝试,请致电:ThreadPool.QueueUserWorkItem(RoutineX);您将需要,使RoutineX接收对象类型的参数,即使你不使用它。这将使routinex在另一个线程中运行。