在WPF中定位自身时的窗口闪烁

时间:2012-04-02 05:41:07

标签: c# wpf

我正在研究WPF应用程序,我面临的问题是Screen Flickers,就像它在加载时定位一样。我想隐藏它或类似的东西,直到它完全加载,然后显示它。

我正在尝试使用递归消息抽取来执行此操作,与winform应用程序中的DoEvents相同。

这样的东西
Application.Current.Dispatcher.Invoke(DispatcherPriority.Background, new ThreadStart(delegate{});

由于

1 个答案:

答案 0 :(得分:1)

你可以像这样使用自己的DoEvents方法:

public void DoEvents()
{
    DispatcherFrame frame = new DispatcherFrame();
    Dispatcher.CurrentDispatcher.BeginInvoke(DispatcherPriority.Background, (Action<DispatcherFrame>)(frm => { frm.Continue = false; }), frame);
    Dispatcher.PushFrame(frame);
}