围绕类和GUI移动数据

时间:2011-08-04 21:52:12

标签: c# class error-handling directory

我的程序在创建后立即将文件从一个文件夹移动到另一个文件夹。文件将以每秒50左右的速度进入。该程序监视两个文件夹,并将这两个文件夹中的文件发送到计算机上的某些目录。

我想要解决的一件事是可能会弹出的错误。我想过使用messagebox.show让用户知道让我们说“文件夹不存在”,但是有10000个左右的文件无法移动,或者如果拒绝访问目录,计算机可能只是用完了内存10000个弹出窗口。

另一种方法是简单地在GUI控件上向用户显示消息,并停止文件观察器。问题是,我的folderwatcher类无法访问GUI中的状态栏。因此,如果状态栏被称为消息,我不能简单地将“messages.text”分配给来自folderwatcher类中抛出的异常的错误消息。

我还被告知,将GUI上的控件赋予folderwatcher类是不好的做法,因为它违背了面向对象编程的目的。 (沿着这些方向)。

所以,我考虑构建一个只存储数据/状态消息的类。我的GUI将挂钩到该类,并且folderwatcher类将在发生错误时更新它。当发生这种情况时,我的GUI将更新,messages.text将显示错误供用户查看。

我认为这个概念会很好用,但我不知道从哪里开始。如果您需要任何其他信息,我很乐意提供,但反馈和提示/技巧是我正在寻找的。

另外,我的方法是构建一个单独的类,保存信息是在类和GUI之间传输错误消息的最佳方法吗?或者有更简单的方法吗?

此致

tf.rz。谢谢你的帮助!非常感谢。

2 个答案:

答案 0 :(得分:0)

使用具有不同值的字符串构建私有方法,当错误弹出时,只需获取并将值设置为适当的消息框。可以将其指定为全局变量。

答案 1 :(得分:0)

我通过另一个只包含一个字符串和一个事件处理程序的类来连接类和GUI。 GUI订阅事件处理程序,该类将创建创建的新类的实例并修改字符串。当字符串更改时,GUI将更新,然后用户将看到该消息。感谢所有贡献者!