调度程序没有创建新线程

时间:2013-03-13 19:36:49

标签: c# wpf multithreading frame dispatcher

首先,对不起我的英语。

我正在制作一个带有框架和页面的WPF / C#应用程序。

当我尝试快速更改显示的页面4到5次时,程序开始冻结,我需要等待。

我被迫使用Dispatcher使页面在后台加载,因此它们不会冻结整个应用程序。但仍然冻结。似乎调度程序没有调用新线程。

我正在使用以下代码:

this.Dispatcher.Invoke((Action)(() =>         // BeginInvoke also don't work
{
    Page1 p = new Page1();
    Frame1.NavigationService.RemoveBackEntry();
    Frame1.Content = p;
}));

仍然冻结!有什么帮助吗?

非常感谢。

1 个答案:

答案 0 :(得分:3)

  

我被迫使用Dispatcher使页面加载到后台

这并不是强迫他们加载后台线程,而是迫使他们加载调度程序的线程。