wp8.1开发 如何在工作线程调到主线程ui?

wp8.1开发 怎么在工作线程调到主线程ui?!!

namespace My
{
    /// <summary>
    /// 可用于自身或导航至 Frame 内部的空白页。
    /// </summary>
    public sealed partial class Login : Page
    {
        public Login()
        {
            this.InitializeComponent();
        }

        /// <summary>
        /// 在此页将要在 Frame 中显示时进行调用。
        /// </summary>
        /// <param name="e">描述如何访问此页的事件数据。
        /// 此参数通常用于配置页。</param>
        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
        }

        private void login_Click(object sender, RoutedEventArgs e)
        {
            String name = nameText.Text;
            String pwd = pwdText.Password;
            if (name == null || name.Length == 0) 
            {
                //tbd
            }
            else if (pwd == null || pwd.Length == 0)
            {
                //tbd
            }
            else {
                Identity.Identity identity = Identity.Identity.getInstance();
                Identity.Identity.RetCode ret = identity.login(name, pwd, new Identity.Identity.LoginHandler(loginHandler));
                if (ret != Identity.Identity.RetCode.RET_OK)
                {
                    //tbd
                }
            }
        }

        private void loginHandler(Object sender, Identity.Identity.RetCode code)
        {
            if (!code.Equals(Identity.Identity.RetCode.RET_LOGIN_SUCCESS))
            {
                this.Frame.Navigate(typeof(MainPage));    //工作线程调用主线程,出错。
            }
            else 
            {
                //tbd
            }
        }
    }
}


以上代码中,我就是通过http请求登陆后,在委托的loginHandler()返回登陆结果后,进行迁页。
但是loginHandler()是工作线程,迁页要在主线程中去做。
想问下怎么在工作线程转到主线程?

------解决思路----------------------
引用:
Quote: 引用:

Quote: 引用:

Quote: 引用:

Dispatcher.BeginInvoke


我是新手,刚试下,this.Dispatcher.BeginInvoke()
尴尬的是提示Dispatcher没有BeginInvoke成员函数,高手知道怎么回事么?!

可能我记错了,回去我再看下。



private async void loginHandler(Object sender, Identity.Identity.RetCode code)
        {
            if (!code.Equals(Identity.Identity.RetCode.RET_LOGIN_SUCCESS))
            {
                await this.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => {