我正在努力让winform打开Xna表单。在网上看我发现的最好的方法是首先通过program.cs打开表单,然后输入一个if语句,检查你是否点击了winform上的开始按钮,它将给出DialogResult.OK。我知道我需要使用ShowDialog启动表单,但我使用当前代码获得两个表单。它打开一个,我关闭它,它打开另一个winform,当你关闭它时,你得到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();
}
(compotents是我用来存储变量并以xna形式使用它们的类)
答案 0 :(得分:0)
表单显示两次,因为您正在调用ShowDialog
两次,但没有对第一个调用的结果执行任何操作。改为:
using(Form1 form = new Form1())
{
if(form.ShowDialog() == DialogResult.OK)
{
using (Game1 game = new Game1())
{
game.Run();
}
}
}