正在尝试更新UI WPF

正在尝试更新UI WPF,wpf,vb.net,Wpf,Vb.net,在我的WPF应用程序中,我的Demo_click事件中有以下代码: cmdDoMyThing是一个切换按钮 cmdDoMyThing.IsChecked = True cmdDoMyThing.UpdateLayout() Delay() showAnotherDialog() cmdDoMyThing.IsChecked = False 这是延迟() 我的问题是,我想在这个方法完成之前更新Demo_Click事件中的UI。因此,检查cmdDoMyThing并在UI中显示已检查的状态,然后等待

在我的WPF应用程序中,我的Demo_click事件中有以下代码: cmdDoMyThing是一个切换按钮

cmdDoMyThing.IsChecked = True
cmdDoMyThing.UpdateLayout()
Delay()
showAnotherDialog()
cmdDoMyThing.IsChecked = False
这是延迟()

我的问题是,我想在这个方法完成之前更新Demo_Click事件中的UI。因此,检查cmdDoMyThing并在UI中显示已检查的状态,然后等待2秒钟,调用showAnotherDialog,当用户关闭showAnotherDialog时,则未选中cmdDoMyThing,更新UI并在Demo_click事件中继续此过程。 我疯狂地试图让它工作,但我找不到方法去做。
有什么建议吗?提前谢谢。

如果我理解正确,我认为您正在寻找模式窗口/对话框。尝试打开对话框而不是显示时的方法,伙计,我建议您仔细查看MSDN上的页面。。。你似乎真的很困惑如何使用它。。。这不是WinForms。您不再需要使用
Call
关键字+1因为它不是WinForms,当然不是!谢谢你们的评论,我知道这不是表格,我想就我的问题寻求一些指导。请关注UI的行为:)看看如何使用
Dispatcher
而不是
Thread.Sleep
。实际上,我在这里有一个可能有助于理解调度器及其工作原理的例子:)可能是我没有很好地解释我的问题。显示对话框不是问题。我必须复制这种行为:显示已单击的切换按钮,等待2秒,显示对话框,取消选中切换按钮,等待2秒,然后执行其他操作。但所有这些都在同一个方法中。问题是UI看起来像是在需要时不刷新。感谢您的评论:)
Sub Delay()
    Thread.Sleep(2000)
End Sub