Получить сигнал "готово" после рендеринга графика инструментария WPF - PullRequest
2 голосов
/ 05 сентября 2011

Я использую графику из набора инструментов WPF. После создания диаграммы мне нравится делать снимок этой диаграммы без визуализации этой диаграммы. Моя проблема в том, что я не знаю, когда закончится процесс рендеринга, поэтому я могу создать снимок. Я пытался прослушать событие «LayoutUpdated», но график обновляется очень часто.

Может кто-нибудь сказать мне, как узнать, полностью ли отрисован график?

Ответы [ 2 ]

0 голосов
/ 12 сентября 2011

Событие Loaded звучит так, как вам нужно.

MyChart.Loaded += (sender, e) =>
{
    // chart has been loaded but not yet rendered
}

где "MyChart" - это имя, которое вы дали диаграмме в своем XAML.

Я не уверен, насколько хорошо это работает с частыми обновлениями, но эта ссылка, похоже, указывает http://blogs.msdn.com/b/mikehillberg/archive/2006/09/19/loadedvsinitialized.aspx, что это то, что вы ищете.

0 голосов
/ 06 сентября 2011

Вы можете использовать Dispatcher в своем коде:

this.Dispatcher.BeginInvoke(DispatcherPriority.Loaded, new Action(() =>
    {
        // code in here should be executed after chart has been rendered.
    }
));
...