gtk-dotnet [00 24 00 00 04 80 00 00 94 00 00 00 06 02 00 00 00 24 00 00 52 53 41 31 00 04 00 00 01 00 01 00 71 EB 6C 55 75 52 9C BF 72 44 F7 A6 EA 05 62 84 F9 EA E0 3B CF F2 CC 13 2C 9C 49 0A B3 09 EA B0 B5 6B CE 44 9D F5 03 D9 C0 A8 1E 52 05 85 CD BE 70 E2 FB 90 43 4B AC 04 FA 62 22 A8 00 98 B7 A1 A7 B3 AF 99 1A 41 23 24 BB 43 25 F6 B8 65 BB 64 EB F6 D1 C2 06 D5 73 2D DF BC 70 A7 38 9E E5 3E 0C 24 6E 32 79 74 1A D0 05 03 E4 98 42 E1 9B F3 7B 19 8B 40 21 26 CB 36 89 C2 EA 64 96 A4 7C B4] 2.8.0.0 Gtk# is thread aware, but not thread safe; See the Gtk# Thread Programming for details. Gdk to System.Drawing.Graphics interoperability. System.Object Method System.Drawing.Graphics Gets a context for a a a Use this method to obtain a System.Drawing.Graphics context from a Gtk drawable. Both pixmaps () and windows () are drawables (). The following example shows how to create a custom widget that renders a mesh. This example overrides the OnExposeEvent method and uses calls to do the actual drawing: using System.Drawing; using Gtk; class PrettyGraphic : DrawingArea { public PrettyGraphic () { SetSizeRequest (200, 200); } protected override bool OnExposeEvent (Gdk.EventExpose args) { using (Graphics g = Gtk.DotNet.Graphics.FromDrawable (args.Window)){ Pen p = new Pen (Color.Blue, 1.0f); for (int i = 0; i < 600; i += 60) for (int j = 0; j < 600; j += 60) g.DrawLine (p, i, 0, 0, j); } return true; } } Method System.Drawing.Graphics To be added a a a To be added