2009-11-07 95 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