如何访问 WinForm 控件,例如ProgressBar
来自另一个类的属性?
请参阅下面我的代码。我知道这可能不是将 WinForm 类及其成员公开为的最佳选择public
但我现在正试图澄清这个概念。
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public void button1_Click(object sender, EventArgs e)
{
Class1 c = new Class1();
c.loop();
}
public void PBSetup()
{
progressBar1.Minimum = 0;
progressBar1.Maximum = 100;
}
public void PBUpdate(int recno)
{
progressBar1.Value = Class1.recno;
}
}
}
namespace WindowsFormsApplication1
{
class Class1
{
public static int recno;
public void loop()
{
//How do I access Form1.PBSetup()??
for (recno = 0; recno <= 100; recno++)
{
//How do I access Form1.PBUpdate(recno)??
}
}
}
}
您不希望您的业务逻辑(您的类)与您的 UI(您的表单)进行交互。业务逻辑应该与表示层无关。
如果您希望表单能够响应课堂内发生的事情,您可以考虑公开一个Event http://msdn.microsoft.com/en-us/library/awbftdfh.aspx在表单可以订阅的类中,就像订阅按钮的单击事件一样。类实例可以完全不知道谁可能在监听而触发事件,并且任何订阅者都会收到通知。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)