GTK# - PropertyNotifyEvent似乎不起作用

时间:2017-05-18 09:01:24

标签: events mono event-handling xamarin-studio gtk#

我尝试让我的应用程序对窗口小部件的属性更改做出反应,但是信号PropertyNotifyEvent永远不会调用。 出于测试目的,我制作一个包含标签和按钮的非常简单的应用程序。按下按钮更改标签的文本属性,但PropertyNotifyEvent没有响应。

using System;
using Gtk;

public partial class MainWindow : Gtk.Window
{
public MainWindow() : base(Gtk.WindowType.Toplevel)
{
    Build();
    label1.AddEvents((int)(Gdk.EventMask.PropertyChangeMask));
}

protected void OnDeleteEvent(object sender, DeleteEventArgs a)
{
    Application.Quit();
    a.RetVal = true;
}

protected void OnButton1Clicked(object sender, EventArgs e)
{
    label1.Text = "new text";
}

protected void OnLabel1PropertyNotifyEvent(object o, PropertyNotifyEventArgs args)
{
    Console.WriteLine("label property change");
}
}

我不知道我做错了什么,我错过了什么吗?

1 个答案:

答案 0 :(得分:1)

找到解决方案:

label1.AddNotification("label", (o, args) => {Console.WriteLine("label property change");});