如何使用Form.ShowDialog();正确使用program.cs
本文关键字:program cs Form 何使用 ShowDialog | 更新日期: 2023-09-27 18:03:55
我正在尝试使winform打开Xna表单。在网上寻找我发现的最好的方法是首先通过program.cs打开表单,然后放入一个if语句来检查您是否点击了winform上的开始按钮,这将给出dialog sult。好的。我知道我需要使用ShowDialog启动表单,但是我用当前的代码得到了两个表单。它打开一个,我关闭它,它打开另一个窗体,当你关闭它,你得到Xna窗体。有什么建议吗?下面是我的代码:
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
static void Main(string[] args)
{
using(Form1 form = new Form1())
{
form.ShowDialog();
if(form.ShowDialog() == DialogResult.OK)
{
using (Game1 game = new Game1())
{
game.Run();
}
}
}
}
}
这是我的按钮代码:
private void button1_Click(object sender, EventArgs e)
{
compotents comps = new compotents();
comps.mass = textBox1.Text;
comps.velocity = textBox2.Text;
comps.gravity = textBox3.Text;
button1.DialogResult = DialogResult.OK;
this.Close();
}
(组件是我用来存储变量并在xna形式中使用它们的类)
表单显示两次,因为您调用了ShowDialog
两次,但没有对第一次调用的结果做任何事情。改变:
using(Form1 form = new Form1())
{
if(form.ShowDialog() == DialogResult.OK)
{
using (Game1 game = new Game1())
{
game.Run();
}
}
}