使用& # 39;定制# 39;函数中的参数,用于输入小部件(gtk#)

本文关键字:小部 输入 用于 gtk# 定制 函数 参数 使用 | 更新日期: 2023-09-27 18:15:07

是否有一种方法,我能够使用'自定义'参数与一个函数,当在一个条目小部件的值被改变时使用。

基本功能为:

    public void(object sender, EventArgs args){
        Entry ent1 = (Entry)sender;
    }

what I tried:

    public void onChange(object sender, EventArgs args, String name){
        Entry ent1 = (Entry)sender;
    }

但是它会运行,因为当我调用函数时,它是:entry1 += onChange("test ");

只传递一个参数给函数,当它需要三个参数时。我问的是我如何使用一个"自定义"参数,如"名称",仍然传递值为"发件人"answers"args"?

使用& # 39;定制# 39;函数中的参数,用于输入小部件(gtk#)

您必须创建一个委托来包装传递该额外参数的代码。

您应该能够使用以下语法:

entry1 += (s, e) => onChange(s, e, "testname");

但是,这将使您无法取消订阅该事件。如果你需要,你必须存储委托:

ChangeEventHandler onchange = (s, e) => onChange(s, e, "testname");
entry1 += onchange;
...
entry1 -= onchange;