Witam, po odpaleniu programu rysunek od razu się pojawia. Chcę aby pojawił się dopiero po przyciśnięciu na Button. Dodatkowo nie działa mi ustawienie wielkości sceny (SetView). Obrazek się zmniejszy dopiero po odpaleniu programu i ręcznym zmniejszeniu/zwiększeniu okna. Wielość sceny w kodzie powinna się ustawić automatycznie do wielkości okna, ale działa to dopiero po tym jak to okno zwiększę lub zmniejszę. Gdy wprowadzam dane (height width) na sztywno pojawia się to samo.

Fragment kodu:

public Form1()
        {
            InitializeComponent();
            simpleOpenGlControl1.InitializeContexts();
            SetView(this.Height, this.Width);
            Gl.glClearColor(0.0f, 0.0f, 0.0f, 0.0f); // kolor czyszczący ekran (czarny)
            Gl.glShadeModel(Gl.GL_FLAT); // typ cieniowania (gładkie)
            Gl.glEnable(Gl.GL_DEPTH_TEST); // włączenie funkcji kontroli głębi
            Gl.glEnable(Gl.GL_CULL_FACE); // włączenie obliczeń dla niewidocznych ścian
        }
       
        protected override void OnPaint(PaintEventArgs e)
        {
            base.OnPaint(e);
            Gl.glClear(Gl.GL_COLOR_BUFFER_BIT | Gl.GL_DEPTH_BUFFER_BIT);
        }

       
        private void SetView(int height =200 , int width =200 )
        {
            Gl.glPopAttrib();
            Gl.glPushAttrib(Gl.GL_ENABLE_BIT);     
            // Ustalenie rozmiaru sceny zgodnie z wymiarami okna aplikacji
            Gl.glViewport(0, 0, width, height);         
            // Wyczyszczenie macierzy przekształceń
            Gl.glMatrixMode(Gl.GL_PROJECTION);
            Gl.glLoadIdentity();
            const float nRange = 40.0f;
            // Zabezpieczenie przed dzieleniem przez zero
            if (height == 0) { height = 1; }
            // Ustalenie ograniczenia rozmiaru sceny
            if (width <= height)
            {
                Gl.glOrtho(-nRange, nRange, -nRange * height / width,
                nRange * height / width, -nRange, nRange);
            }
            else
            {
                Gl.glOrtho(-nRange * width / height, nRange * width / height,
                -nRange, nRange, -nRange, nRange);
            }
       
            Gl.glMatrixMode(Gl.GL_MODELVIEW);
            Gl.glLoadIdentity();
        }

        protected override void OnResize(EventArgs e)
        {
            base.OnResize(e);
            SetView(this.Height, this.Width);
        }

        private void RenderScene()
        {

            {
                #region Draw Triangle
                Gl.glColor3f(0.8f, 0.8f, 0.0f); // ustalenie koloru
                Gl.glBegin(Gl.GL_TRIANGLES); // rysowanie trójkąta
                Gl.glVertex3f(-20.0f, 0.0f, 0.0f); // lewy wierzchołek
                Gl.glVertex3f(20.0f, 0.0f, 0.0f); // prawy wirzchołek
                Gl.glVertex3f(0f, -30.0f, 0.0f); // górny wierzchołek
                Gl.glEnd();
                #endregion Draw Triangle
                Gl.glPopMatrix();
                Gl.glFlush();
            }
        }
        private void simpleOpenGlControl1_Load(object sender, EventArgs e)
        {
         
        }
        private void Form1_Load(object sender, EventArgs e)
        {
        }
        private void simpleOpenGlControl1_Load(object sender, PaintEventArgs e)
        {
            RenderScene();
        }
        private void button1_Click(object sender, MouseEventArgs e)
        {         
        }

Edit:
Problem z wielkością sceny rozwiązany, pozostał Button.

dodanie znacznika <code class="csharp"> - @furious programming