繁体   English   中英

WP8如何管理代表

[英]WP8 How to manage delegates

我是WP8编程的新手,我不知道如何调用异步方法和更新UI。 基本上这是我的示例:

public class MyClassGetFinishedEventArgs : EventArgs
{
    public MyClass SomeObject{ get; set; }
    public List<MyClass> SomeList{ get; set; }
}

public static class MyClassManager
{

    private static MyClassService service = new MyClassService();
    public static event EventHandler GetFinished = delegate { };
    static MyClassManager()
    {
        service = new MyClassService();
    }

    public static void Get() 
    {
        var ea = new MyClassGetFinishedEventArgs();

        service.Get(
            delegate {
                ea.SomeList = service.SomeList;
                GetFinished(null, ea);
            }
            );
    }
}

在Android上,我这样拨打电话:

protected override void OnCreate(Bundle bundle)
   {
   base.OnCreate(bundle);
   SetContentView(Resource.Layout.frmContent);

   MyClassManager.GetFinished += HandleFinishedGet;
   MyClassManager.Get();
   }

   void HandleFinishedGet(object sender, EventArgs ea)
   {
               var args = ea as GetFinishedEventArgs;
               if (args != null)
               {

                   if (args.Success)
                   {
                           act.RunOnUiThread(() =>
                           {
                     //Do something to update UI

                           }
                           );
                       }
                   }
          }

有没有办法在Windows Phone中执行相同的操作?

你有没有尝试过

Deployment.Current.Dispatcher.BeginInvoke(() =>
    {
       //update UI?
    });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM