C#opengl以当前形式可视化

C#opengl以当前形式可视化,c#,forms,opengl,user-interface,visual-studio-2013,C#,Forms,Opengl,User Interface,Visual Studio 2013,我没有C#的经验,对表单也有一些问题。 我正在使用VS2013用GUI制作我的程序。在主窗体中,一个按钮启动OpenGL可视化。下面是该按钮的代码: private void button_Click(object sender, EventArgs e) { Glut.glutInit(); Glut.glutInitDisplayMode(Glut.GLUT_DOU

我没有C#的经验,对表单也有一些问题。 我正在使用VS2013用GUI制作我的程序。在主窗体中,一个按钮启动OpenGL可视化。下面是该按钮的代码:

private void button_Click(object sender, EventArgs e)
{
    Glut.glutInit();                                                        
    Glut.glutInitDisplayMode(Glut.GLUT_DOUBLE | Glut.GLUT_RGB);
    Glut.glutInitWindowSize(600, 600);
    Glut.glutCreateWindow("OpenGL Multiple View");
    init();
    Glut.glutReshapeFunc(reshape);
    Glut.glutDisplayFunc(draw);
    Glut.glutKeyboardFunc(new Glut.KeyboardCallback(keyboard));
    Glut.glutMainLoop();
}
一切都很好,但这扇新开的窗户在我看来并不好。此外,当我关闭可视化窗口时,所有程序都将关闭

我有两个问题:

1) (在VS13,C#)中是否有任何形式(按钮、文本框[haha]等)可以用于以当前的主形式可视化?按下按钮后,可视化在“该”主窗体区域开始。姓名/简单代码/链接

2) 如果没有,我需要做什么,只关闭可视化窗口,而不是所有的程序


感谢您的帮助

您基本上可以渲染到所需的每个Windows窗体控件。如何为给定的HWND(在C#中称为.Handle)创建上下文取决于创建上下文所使用的库。在OpenGl项目中使用Opentk(阅读一本书或丰富的教程)。对Winform项目使用GDI+。