是安卓系统吗;的结构,在Windows Phone中提供侦听器

本文关键字:Phone Windows 侦听器 结构 系统 | 更新日期: 2023-09-27 18:21:07

在Android中,我可以使用这样的监听器:

Class1.java:

public class Class1 {
    public Class1() {
        Class2 c = new Class2();
        c.setOnFinishListener(new Class2.OnFinishListener() {
            @Override
            void onFinish(String result) {
                // My result's handling here
            }
        });
    }
}

Class2.java:

public class Class2 {
    private OnFinishListener mOnFinishListener;
    public void setOnFinishListener(OnFinishListener onFinishListener) {
        mOnFinishListener = onFinishListener;
    }
    private void someMethod() {
        String result="Result here";
        if (mOnFinishListener != null) mOnFinishListener.onFinish(result);
    }
    public interface OnFinishListener {
        void onFinish(String result);
    }
}

像这样的东西在C#中可用吗?如何使用C#实现类之间的通信?

是安卓系统吗;的结构,在Windows Phone中提供侦听器

C#中推荐的方法是使用事件:

public class Class1
{
    public Class1()
    {
        var c = new Class2();
        c.OnFinish += result => 
        {
            // My result handling here
        };
    }
}
public class Class2
{
    public event Action<string> OnFinish;
    private void SomeMethod()
    {
        string result = "Result here";
        var eventHandler = this.OnFinish;
        if (eventHandler != null)
        {
            eventHandler(result);
        }       
    }
}