Вы не должны пытаться скопировать скомпилированные библиотеки cairo в папку bin.Mono (или MonoDevelop - не уверен в этой части) поставляется с необходимыми библиотеками.Вы просто добавляете их, нажимая на папку References и затем Edit References (аналогично Visual Studio).
Проблема в редакторе пользовательского интерфейса GTK MonoDevelop.Там нет возможности добавить пользовательский виджет, хотя я считаю, что это обычная задача.Если вы хотите сделать это, вам придется взломать для файла, сгенерированного этим редактором (файл, называемый вашим классом окна, в папке gtk-gui ).Скажем, если у вас есть класс CairoCanvas, который наследует класс виджета Gtk.DrawingArea - вы просто находите строку, например this.drawingarea1 = new global::Gtk.DrawingArea()
, и меняете ее на this.drawingarea1 = new CairoCanvas()
, не забывая, конечно, добавить директиву using YourProjectName;
вверх.Каждый раз, когда вы изменяете что-то в своем графическом интерфейсе, файл будет восстановлен.Итак, вы переходите к этому файлу, видите, что, изменив его, нажмите кнопку «Сохранить изменения», чтобы сохранить свою работу.Затем перестройте свой проект еще раз, и все.
Я с радостью надеюсь, что этот ответ поможет некоторым новичкам Mono.И я надеюсь отпраздновать тот день, когда сообщество MonoDevelop (это OSS, не так ли?) Реализует эту недостающую функциональность.