0%

在线程中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));