GTK# using DrawingArea

Viewed 69

I want to write a Snake game using GTK# but for several days I can't figure out the way dealing with DrawingArea. In all the examples that I've found, there's subscribtion to the drawingArea.ExposeEvent event, a method like:

void OnDrawingAreaExposed (object source, ExposeEventArgs args)
{   
    DrawingArea darea = (DrawingArea) source;
    Cairo.Context ctx = Gdk.CairoHelper.Create (darea.GdkWindow);

    // drawing here ...

    ((IDisposable) ctx.Target).Dispose();
    ((IDisposable) ctx).Dispose();
}

But I have neither .ExposeEvent event available on the DrawingArea object, nor the ExposeEventArgs data type. I don't even know what it's about. I would like to deal with rendering, perhaps even in other way, for example to make a bitmap image then assign it to something like PictureBox from WinForms.

Also, I have to draw at set intervals, which means I need other GTK# methods too.

I used darea.GdkWindow to create the Cairo.Context, but it is maked as "deprecated". I've tried just creating a Cairo.Context and then drawing with the darea.Draw(cc) method, but that doesn't work either.

1 Answers
Related