WPF应用程序错误-调用线程无法访问对象 [英] WPF Application Error - Calling thread can't access object
本文介绍了WPF应用程序错误-调用线程无法访问对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
这是我第一次尝试WPF应用程序.它基于Dan Mabbutt的一篇文章.这是Windows1.xaml.vb文件中的代码.
This is my first attempt at a WPF application. It is based on an article from Dan Mabbutt. Here is the code from the Windows1.xaml.vb file.
导入 System.Timers |
类 Window1 |
朋友 WithEvents myTimer As 新建 私有 子 Button1_Click( ByVal 发件人 As 系统. 对象 , ByVal 为 句柄 Button1.单击 |
myTimer.Interval = 100 |
myTimer.Start() |
标签1 "你好来自" & vbCrLf& " GrandpaB; Label1.FontSize = 24 |
标签1.Opacity = 0.6 |
结束 子 |
私有 子 myTimer_Elapsed( ByVal 发件人 为 , e System.Timers.ElapsedEventArgs) myTimer.已用 |
Label1.Opacity + = 0.01'' ****此处发生错误**** |
如果 Label1.Opacity> 1 然后 Label1.Opacity == 0 |
结束 Sub |
结束 类 |
Imports System.Timers |
Class Window1 |
Friend WithEvents myTimer As New Timer |
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button1.Click |
myTimer.Interval = 100 |
myTimer.Start() |
Label1.Content = "Hello From" & vbCrLf & "GrandpaB" |
Label1.FontSize = 24 |
Label1.Opacity = 0.6 |
End Sub |
Private Sub myTimer_Elapsed(ByVal sender As Object, ByVal e As System.Timers.ElapsedEventArgs) Handles myTimer.Elapsed |
Label1.Opacity += 0.01 '**** Error Occurs here **** |
If Label1.Opacity > 1 Then Label1.Opacity = 0 |
End Sub |
End Class |
推荐答案
您可以尝试以下方法:
You could try something like this:
Dispatcher_mainDispatcher = Dispatcher.CurrentDispatcher; |
私有 void myTimer_Elapsed( object 发送者, ElapsedEventArgsargs){ |
_mainDispatcher.BeginInvoke(DispatcherPriority.Normal, new 委托 如果 (Label1.Opacity> 1) |
标签1不透明度= 0; |
))); |
} |
Dispatcher _mainDispatcher = Dispatcher.CurrentDispatcher; |
private void myTimer_Elapsed(object sender, ElapsedEventArgs args) { |
_mainDispatcher.BeginInvoke(DispatcherPriority.Normal, new ThreadStart(delegate () { |
Label1.Opacity += 0.01; |
if (Label1.Opacity > 1) |
Label1.Opacity = 0; |
})); |
} |
这篇关于WPF应用程序错误-调用线程无法访问对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文