一个项目有两个文件夹,其中一个是前台一个是后台,后台应该能控制前台关闭和show出来才对,该怎么实现呢
一个项目中的话,用 Application.OpenForms[窗体名].Show() 可以显示。
一种是定义一个全局的委托,后台窗体调用委托关闭前台窗体,前台窗体执行委托;
第二种是单例模式,在软件启动的时候使用一个hastable来存储所有的窗体实例,后台要关闭窗口的时候从hastable中找到窗体,执行窗体的hide或者close方法;
以上两种用在后台程序和前台程序中同一个应用程序域的情况下,如果是不同的程序域的话可以使用socket,后台启动一个socket侦听,前台启动的时候连接到后台,需要关闭或者显示的时候后台点击按钮发送一个socket命令,前台收到的时候执行窗体关闭操作,具体操作和一二两种一样。
你说的是 一个窗口去 控制另外一个窗口的显示和隐藏吗? 如果是 from的话 很简单,在From1里面定义一个 Form2的变量,然后按钮点击显示和隐藏
private void testBtn_Click(object sender, EventArgs e)
{
if (null == mform2)
{
mform2 = new Form2();
}
mform2.Show();
}
private void testBtn2_Click(object sender, EventArgs e)
{
if (null != mform2)
{
mform2.Hide();
}
}
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();
frm2.Show();
}
关闭用close方法