2009-11-07 54 views

回答

1

现在Gtk.Builder没有完全实现在当前版本的Gtk#(2.12)中。 这个thread解释了目前的情况。所以一旦Gtk#的2.14发布,你可以这样做:

builder.Autoconnect (this); 

在你可以使用Glade.XML,然后将代码转换(和林间空地文件)作为这里所描述的其间:http://lists.ximian.com/pipermail/gtk-sharp-list/2008-October/009157.html

+0

谢谢,这是很好的了解。任何关于2.14版本何时发布? – 2009-11-07 23:40:00

+1

嗯,这听起来像是他们跳过2.14+赞成3.x: http://www.mono-project.com/GtkSharpPlan#Release_plan – 2009-11-07 23:46:08

+0

它是2013年,它仍然不工作? – Petr 2013-03-24 14:08:08

0

您可以连接代表在C#中的信号,您的信号使用方法Autoconnect,但方法一定要在形式上:

static void customMethod(object sender, EventArgs args); 

让你在这样的方法使用类的每个字段必须声明为static。它让你创造你的课程的另一个实例。

有连接信号的另一种方式:

Builder builder = new Builder(); 
builder.AddFromFile("custom.glade"); 
Button button = (Button)builder.GetObject("closeButton"); 
button.Clicked += delegate { 
    Application.Quit(); 
} 
+1

欢迎来到StackOverflow并感谢您的参与。在这里不鼓励使用代码解答,因为它们不会为进一步的解决方案提供太多价值,请您解释它为什么以及如何工作? – 1337 2014-09-05 11:49:16