куда Dispatcher.BeginInvoke помещает элементы?новый задвинутый кадр с помощью pushframe? - PullRequest
0 голосов
/ 25 мая 2011

Я работаю с Dispatcher в wpf и смотрю на следующую страницу: http://msdn.microsoft.com/en-us/library/system.windows.threading.dispatcher.pushframe.aspx

есть пример, который достигает результата, аналогичного методу DoEvent, он сначала вызывает begininvoke для помещения элемента в очередь событий, а затем pushframe. Мне интересно, какой кадр был надет? исходный или недавно выдвинутый?

Может ли кто-нибудь пролить свет на это? Спасибо.

[SecurityPermissionAttribute(SecurityAction.Demand, Flags = SecurityPermissionFlag.UnmanagedCode)]
public void DoEvents()
{
    DispatcherFrame frame = new DispatcherFrame();
    Dispatcher.CurrentDispatcher.BeginInvoke(DispatcherPriority.Background,
        new DispatcherOperationCallback(ExitFrame), frame);
    Dispatcher.PushFrame(frame);
}

public object ExitFrame(object f)
{
    ((DispatcherFrame)f).Continue = false;

    return null;
}

1 Ответ

0 голосов
/ 05 октября 2011

Посмотрите на это DispatherFrames

...