如何在XNA C#项目中运行C#winform

时间:2011-08-23 19:27:06

标签: c# xna pdfsharp

我正在尝试在XNA游戏中使用PDFsharp库。我试图开始工作的示例代码是:

 static void Main() 
    {
      Renderer renderer = new Renderer();
      PreviewForm form = new PreviewForm();
      form.RenderEvent = new PagePreview.RenderEvent(renderer.Render);
      Application.Run(form);
    }

但我不知道如何让它在XNA中运行。

是否可以将传递给winform的图形传递给XNA图形引擎?

2 个答案:

答案 0 :(得分:0)

更新2

似乎MSDN的原始链接已被破坏,我似乎无法在MSDN上找到它们,如果有人这样做,请更新帖子。与此同时,您可能需要查看此代码项目文章 - http://www.codeproject.com/Articles/21330/Easy-Rendering-with-XNA-Inside-a-Windows-Form

快速检查后,

更新,看起来第一个链接(参见:XNA and WinForms)与我找到的链接相同。

我建议你研究混合winforms和XNA,试试这个:http://create.msdn.com/en-US/education/catalog/sample/winforms_series_1

答案 1 :(得分:0)

您需要做的第一件事是创建登录表单。 在此表单中创建您需要的字段作为公共属性

public string userName {get;set;} 
public string password {get;set;}

在登录表单中,您需要将用户信息写入这些属性:

private void btnOk_Click(object sender,EventArgs e)
{
    this.userName = txtName.Text;
    this.password = txtPass.Text;
    this.Close();
}

然后,在游戏中(在你需要的部分)写下这样的东西:

using (var form = new frmLogin())
{
    var result = form.ShowDialog();
    if (result == DialogResult.OK)
    {
        string user = form.userName;
        string pass = form.password;
    }
}

但是作为一个FYI - winforms在XNA看起来并不那么好 希望它有所帮助