应用程序当嵌入式Web浏览器第一次加载URL时冻结

时间:2013-11-21 07:28:54

标签: wpf multithreading wpf-controls webbrowser-control prism

我在使用prism开发的WPF应用程序中有一个嵌入式Web浏览器控件。在左窗格的主页中,有一个实现的网格,其中包含URL的列表,当双击新的嵌入式浏览器视图并将其添加到该区域时。我将URL传递给对象,以便在Web浏览器控件中加载网页。我在这里遇到的问题是第一次在生命端网格上双击任何URL时,应用程序冻结,直到页面加载到Web浏览器控件中我已经使用调度程序在xaml.cs中执行了我的实现。请在下面找到代码..

        public BrowserView()
        {
            InitializeComponent();
        }

        void WebBrowserControlView_Loaded(object sender, RoutedEventArgs e)
        {
            UrlStore = ViewModel.Model.Url;
            string Url = UrlStore;

            Dispatcher.BeginInvoke(DispatcherPriority.Background, new Action(() => { UrlLoad(Url); })); 
        }
        private void UrlLoad(string Url)
        {
//All implementations were run on background thread.
}

我不确定为什么最初有滞后。但是,对于以后的操作,没有滞后。

0 个答案:

没有答案