我正在寻找从另一个类控制我的 Windows 窗体对象的最佳方法。如果您的回答是“这不是您在 OOP 语言中的做法!”,请不要回答。请照顾我需要的东西:
我的 Windows 窗体中有一个不可见的进度条。如果我在我的 Windows 窗体上按下一个按钮,应该加载一个文件并且进度条应该执行一些步骤......由于文件加载操作非常复杂,我从一个自己的类加载它,该类用于某种类型的文件. 喜欢:
void TestButton_Click(object sender, EventArgs e)
{
MapFiles.ProcessFile()
}
现在在 ProcessFile 方法中,我想控制表单中的 ProgressBar。如果我将 ProgessBar 设为公开且静态,它会起作用。但这有一些委屈。您不能再控制表单设计器中的元素了。
如果我可以访问我的表单的实例对象,那将很容易。但我不知道如何初始化表单:
Application.Run(new Form1());
我不想在这里对继承做些什么,因为 MapFiles 与 Form1 没有任何关系......
是否有另一种/最好的方法来控制另一个类的这个 ProgressBar?