KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
Could someone shed some light on an issue I'm having? I'm working on a wpf project. The scenario is as below: I need to pop up a window(model window) on main UI thread and then close it. These works are started from another UI thread (to deter user from clicking on the main UI window.) then I close this window. The main code are displayed below. And it works. As far as I know the close method would not get excuted before ShowDialog() returns (at least this is the case on UI thread, I mean code without dispatcher), does anyone have experience with multithread? Window window; private void Button_Click(object sender, RoutedEventArgs e) { Thread thread = new Thread(() => { //create a window and let user work from this thread //code is omitted. //create another window on main UI thread Application.Current.Dispatcher.BeginInvoke(new Action(() => { window = new Window(); window.ShowDialog(); })); //do some work here Thread.Sleep(1000); Application.Current.Dispatcher.BeginInvoke(new Action(() => { //Thread.Sleep(1000); window.Close(); })); }); thread.Start(); } Thank you for your time!
Tags (comma-separated)
Save Edits
Cancel