I solved the problem this way:
menuItem.ExposeEvent += GtkHelper.DrawImageMenuItemImage;
/// <summary> Draw the image to the image menu item. </summary>
/// The event source. <see cref="System.Object"/>
/// The event args. <see cref="Gtk.ExposeEventArgs"/>
public static void DrawImageMenuItemImage(object o, Gtk.ExposeEventArgs
args)
{
if (o as Gtk.ImageMenuItem == null)
return;
Gtk.Image image = (o as Gtk.ImageMenuItem).Image as Gtk.Image;
if (image == null || image.Pixbuf == null)
return;
Gdk.GC mainGC =
((Gtk.Widget)o).Style.ForegroundGCs[(int)Gtk.StateType.Normal];
Gdk.Rectangle r = args.Event.Area;
args.Event.Window.DrawPixbuf(mainGC, image.Pixbuf, 0, 0, r.Left + 2,
r.Top + (r.Height - image.Pixbuf.Height) /
2,
-1, -1, Gdk.RgbDither.None, 0, 0);
}
Regards, Steffen
--
View this message in context:
http://mono.1490590.n4.nabble.com/ImageMenuItem-does-not-display-the-image-Linux-platform-tp3510861p3511376.html
Sent from the Mono - Gtk# mailing list archive at Nabble.com.
_______________________________________________
Gtk-sharp-list maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/gtk-sharp-list