Есть ли какая-либо разница в скорости загрузки между Page и Window в WPF? - PullRequest
5 голосов
/ 01 марта 2012

Я хочу загрузить 10 000 элементов в DataGrid в WPF.При использовании элемента управления Window данные загружаются быстрее, чем при использовании элемента управления Page.Может кто-нибудь объяснить, почему?

1 Ответ

1 голос
/ 21 марта 2012

Страницы предназначены для использования в навигационных приложениях (обычно с Кнопки «Назад» и «Вперед», например Internet Explorer). Страницы должны быть размещены в NavigationWindow или фрейме

Windows - обычное приложение WPF Windows [lnk]

По сути, это проблема XBAP против ClickOnce . Все на странице компилируется и ограничивается тем, что WPF разрешено делать в окне браузера. Это исключает многие компьютерные операции низкого уровня, с которыми Windows WPF может обойтись, поскольку они скомпилированы для запуска с рабочего стола. Оконные приложения имеют полный доступ к системным ресурсам.

Имейте в виду, что когда вы используете элемент управления Page, даже во время отладки, сгенерированный код создается с учетом развертывания браузера. Все XBAP запускаются в изолированной программной среде с ограниченным доверием. Другими словами, им разрешено использовать определенные библиотеки .NET, но запрещен доступ к другим. [ref] Некоторые из этих библиотек .NET будут отвечать за оптимизацию, которая, следовательно, не может быть достигнута при развертывании браузера.

Таким образом, совершенно очевидно, что приложения, созданные в Windows, смогут выполнять большинство операций быстрее, чем приложения, созданные в Pages.

...