Я сделал нечто похожее на то, что вы пытаетесь сделать. Все, что вам нужно сделать, это сообщить графическому устройству, где представить «материал», который вы визуализировали. Вы делаете это, передавая указатель на холст.
Вот пример формы класса:
public class DisplayForm : Form
{
IntPtr canvas;
Panel displaypanel;
public Panel DisplayPanel
{
get { return displaypanel; }
set { displaypanel = value; }
}
public IntPtr Canvas
{
get { return canvas; }
set { canvas = value; }
}
public DisplayForm()
{
displaypanel = new Panel();
displaypanel.Dock = DockStyle.Fill;
this.canvas = displaypanel.Handle;
this.Controls.Add(displaypanel);
}
}
Затем просто добавьте это в свой розыгрыш игрового класса:
graphics.GraphicsDevice.Present(displayform.Canvas);
После того, как вы закончите рисование в этом экземпляре DisplayForm, вы можете очистить, визуализировать что-то еще и снова вызвать Present, указывая на другой холст.