-2
我想讓winform打開一個XNA表單。在線查看我發現的最好方法是首先通過program.cs打開表單,然後放置一個if語句來檢查是否在Winform中啓動了會啓用DialogResult.OK的啓動按鈕。我知道我需要使用ShowDialog來開始表單,但是我使用當前代碼獲取兩個表單。它打開一個,關閉它,它打開另一個窗體,當你關閉它時,你會得到Xna窗體。有什麼建議麼? 這裏是我的代碼:你如何使用Form.ShowDialog();正確使用program.cs?
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形式使用它們)
我跑它沒有第一form.ShowDialog,但整個事情關閉我打,沒有它... – Alexandre
不'game.Run'生成線程或東西開始按鈕後?你有沒有嘗試在調試器中運行它,看看問題是否變得明顯? –
當我在調試器中運行它時,它看起來沒有問題。沒有標誌彈出,或例外,我按下按鈕,整個調試器關閉,就好像我關閉了應用程序。遊戲。運行只能打開一個XNA表單。儘管我對Xna很陌生,所以可能就是那個遊戲.Run只會調用代碼開始。我不確定。當我調用ShowDialog兩次時,如果它工作,我不會看到問題是什麼。 – Alexandre