如何在Xamarin IOS中向事件处理程序传递参数

4
如何向事件处理程序传递字符串参数?
控制器(A) 编写事件处理程序。
    public event EventHandler ValueChanged; 

    void ResponseCompleted(object sender, CommonCode.ResponseEventArgs e){
        this.InvokeOnMainThread (delegate { 

        if (ValueChanged != null) {
        ValueChanged (this, new EventArgs (e.ResponseData));
// e.ResponseData is an String datatype.
         }
     });
    }

视图控制器(B)

relatedDataSource.ValueChanged += delegate {
 Get Response Data from ViewControllerA
}
1个回答

5
您可以使用通用的EventHandler。例如:
public event EventHandler<string> ValueChanged;

void ResponseCompleted(object sender, CommonCode.ResponseEventArgs e){
    this.InvokeOnMainThread (delegate { 

    var handler = ValueChanged;
    if (handler != null)
        handler(this, e.ResponseData);
    });
}

relatedDataSource.ValueChanged += (s, responseData) => {
    //Your data is in responseData variable
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接