Мне нужно создать программу для проверки некоторых процедурных алгоритмов создания мира, для которых мне нужна поверхность для рисования. Однако виджет DrawingArea для GTK # требует, чтобы все рисование выполнялось в ExposesEvent. Как и в каком виджете я могу нарисовать, не проходя через этот обработчик событий? Основная проблема заключается в том, что я не могу оставить обработчик рисования присоединенным к событию, потому что одна и та же область рисования используется несколькими алгоритмами, поэтому после завершения рисования я удаляю его. Если я изменю размеры или переместлю окно, все сгенерированные рисунки исчезнут, что не очень полезно.
Я попытался использовать Mono.Cairo вместо System.Drawing, но, похоже, к нему применяется то же правило.
Заранее спасибо.