专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Silverlight

silverlight定时事件里为richtextbox动态添加button报跨线程异常

发布时间:2011-06-27 20:00:59 文章来源:www.iduyao.cn 采编人员:星星草
silverlight定时事件里为richtextbox动态添加button报跨线程错误
silverlight定时事件里为richtextbox动态添加button报跨线程错误。
比如,一个richtextbox用来显示聊天内容,timer用来定时检测收到的消息,一旦收到特殊消息就在richtextbox中添加一个按钮
,但是在定时事件中为richtextbox添加控件 Button btn=new Button();时就出现跨线程错误。

------解决方案--------------------
使用 richtextbox.Dispatcher.BeginInvoke()
------解决方案--------------------
MSDN:

private delegate void AddTextDelegate(Panel p, String text);

private void AddText(Panel p, String text)
{
p.Children.Clear();
p.Children.Add(new TextBlock { Text = text });
}

private void TestBeginInvokeWithParameters(Panel p)
{
if (p.Dispatcher.CheckAccess()) AddText(p, "Added directly.");
else p.Dispatcher.BeginInvoke(
new AddTextDelegate(AddText), p, "Added by Dispatcher.");
}
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: