Vraag : Maak knoop klikken voorkomen onload

Hoe maak ik de volgende code op lading voorkomen?  Ik bewoog de code in het gebied form1_load maar het toont geen up.
" codeBody "
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
van
Private Sub (ByVal afzender als System.Object, ByVal e als System.EventArgs) Handvatten Button1_Click Button1.Click
        'bepaal GDI+ context die een vorm vertegenwoordigen
        Verduister GdiSurface als Grafiek
        GdiSurface = Me.CreateGraphics

        'trek een dikke kromme
        Verduister CurvePen als Nieuwe Pen (Color.Plum, 30)
        Verduister CurvePoints () als Punt = {Nieuw Punt (10, 100), Nieuw Punt (50, 80), Nieuw Punt (200, 200)}
        GdiSurface.DrawCurve (CurvePen, CurvePoints)

        'trek rechthoek
        Verduister de perimeter RecPen als van Nieuwe Pen (Color.Crimson, 10) '
        Verduister RecBrush als (Color.LightBlue) 'verf Nieuwe SolidBrush het lichaam
        GdiSurface.DrawRectangle (RecPen, 10, 10, 200, 30)
        GdiSurface.FillRectangle (RecBrush, 10, 10, 200, 30)

        De 'context van de versie GDI
        GdiSurface.Dispose ()

    Sub van het eind

Antwoord : Maak knoop klikken voorkomen onload

Het onderliggende probleem is hier:

    GdiSurface = Me.CreateGraphics

CreateGraphics () in deze context leidt tot een tekeningsoppervlakte die TIJDELIJK is.  Wanneer de vorm zich verfrist zal de tekening eenvoudig gewist worden… en dit is waarschijnlijk bij de Lading van de Vorm ().

Voor een BLIJVENDE tekening hebt u één van beiden nodig:
(1) die gebruik „e.Graphics“ in gebeurtenis de van de Verf () wordt geleverd van de Vorm.
(2) trek aan Bitmap () en het als achtergrond van de Vorm plaatsen.
Andere oplossingen  
 
programming4us programming4us