c#不能从类中打开form
本文关键字:form 不能 | 更新日期: 2023-09-27 18:16:10
请帮我解决这个问题。我的应用程序里有一个类叫aster。cs这里是它的来源:
public class Aster
{
public static void manager_Events(object sender, ManagerEvent e)
{
Global.info = (NewStateEvent)e;
if (Global.info.ChannelState == "6")
{
Global.WMP.controls.stop();
}
if (Global.info.ChannelState == "4" || Global.info.ChannelState == "5")
{
if (Global.zvonok_window == 0)
{
Global.WMP = new WindowsMediaPlayer();
//Global.WMP.settings.volume = 100;
//Global.WMP.URL = @"Resources'Ring.mp3";
//Global.WMP.controls.play();
Global.zvonok_window = 1;
Form_calls f = new Form_calls();
f.TopLevel = true;
f.TopMost = true;
f.Location = new Point(0, 0);
f.Size = new Size(233, 290);
f.Show();
}
}
}
}
我有manager_Events()在应用程序的另一部分(当它启动时):
Global.manager.NewState += new NewStateEventHandler(Aster.manager_Events);
问题是:当我试图打开一个新的形式,它是初始化,但冻结,我不能做任何事情,甚至关闭它。我知道,这个问题是在我从课堂上调用表单的某个地方,但我不明白我做错了什么。当我调用ShowDialog()方法时,一切工作正常。Form_calls来源:
public Form_calls()
{
InitializeComponent();
this.Show();
MessageBox.Show("wds");
}
设计不重要,我只是想打开一个新的窗体。
从构造函数中删除this.Show();
调用-稍后在manager_events
中调用Show
方法(并且在那里它是正确的位置)。