微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

非UI线程的跨线程操作

   研究silverlight异步调用方。

Silverlight中 非UI线程更新UI 的几种方法:Delegate,Asyncoperation,BackgroundWorker

1. delegate

void DoShow(i){ 
    this.dispatcher.BeginInvoke( 
                            delegate { 
                                   txtCalc.Text = string.format(“result “{0}”,i); 
                            }); 
}

2.Asyncoperation

void DoShow(i){ 
    //这个可以写成成员变量,我这里只是为了好区分 
    System.ComponentModel.Asyncoperation asyncoper = System.ComponentModel.AsyncoperationManager.CreateOperation(null); 
    asyncoper.Post(result => 
            { 
                txtCalc.Text = string.format(“result “{0}”,i); 
            },null); 
}

3.BackgroundWorker

参考 MSDN上的文章

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐