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

本文关键字:运行 winform 项目 XNA | 更新日期: 2023-09-27 18:06:23

我正在尝试在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图形引擎?

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

update 2

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

更新后快速检查,看起来第一个链接在(参见:XNA和WinForms)是相同的我发现。

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

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

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;
    }
}

但是作为一个供参考-窗体在XNA中看起来不那么好希望能有所帮助