在线程中new SolidColorBrush System.UnauthorizedAccessException异常 Invalid cross-thread access.解决方法

如果在线程中操作创建一个SolidColorBrush对象,系统会抛出System.UnauthorizedAccessException异常,提示Invalid cross-thread access,可以使用Dispatcher类的BeginInvoke方法解决 。
原代码:


S.Color = new SolidColorBrush(Colors.Red);
//在非UI线程中执行会抛异常

改成:


 Dispatcher.BeginInvoke(() => S.Color = new SolidColorBrush(Colors.Red));

© 2011, 冰冻鱼. 请尊重作者劳动成果,复制转载保留本站链接! 应用开发笔记