У меня есть окно прокрутки Gtk, к которому я пытаюсь присоединить функцию PopupMenuHandler, например, так:
this.scrolledwindow1.PopupMenu += HandlePopupMenu;
и HandlePopupMenu выглядит так:
[GLib.ConnectBefore]
public void HandlePopupMenu(object o, PopupMenuArgs args)
{
Console.WriteLine("test");
Gtk.Menu mbox = new Gtk.Menu();
Gtk.MenuItem Test = new Gtk.MenuItem("test");
Test.Activated += delegate(object sender, EventArgs e) {
Console.WriteLine("test");
};
mbox.Append(Test);
mbox.ShowAll();
mbox.Popup();
}
Моя проблема в том, что это событие никогда не вызывается, когда я щелкаю правой кнопкой мыши по прокручиваемому окну. который я предполагаю, что это должно основываться на этом . Есть только одно другое событие, обрабатывающее ScrollEvent, и ничто не обрабатывает кнопки клавиатуры или мыши. Кто-нибудь может сказать, почему это не работает?