Мерцание окна при позиционировании в WPF - PullRequest
3 голосов
/ 02 апреля 2012

Я работаю над приложением WPF, проблема, с которой я сталкиваюсь, - это мерцание экрана, как будто оно само позиционируется во время загрузки.Я хочу спрятать его или что-то еще, пока он не загрузится полностью, а затем отобразить его.

Я пытаюсь использовать для этого рекурсивную накачку сообщений, также как DoEvents в приложениях winform.

Что-то вроде

Application.Current.Dispatcher.Invoke(DispatcherPriority.Background, new ThreadStart(delegate{});

Спасибо

1 Ответ

1 голос
/ 02 апреля 2012

Вы можете использовать собственный метод DoEvents, как этот:

public void DoEvents()
{
    DispatcherFrame frame = new DispatcherFrame();
    Dispatcher.CurrentDispatcher.BeginInvoke(DispatcherPriority.Background, (Action<DispatcherFrame>)(frm => { frm.Continue = false; }), frame);
    Dispatcher.PushFrame(frame);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...