Высокоскоростное управление черчением WPF - PullRequest
2 голосов
/ 26 ноября 2009

В настоящее время у меня есть приложение Win32 (разработанное в C ++ Builder / VCL), которое я с нуля переделываю для WPF 4.

Одной из основных функций в приложении является рисование инженерных / научных графиков. Мне нравится элемент управления, которым я сейчас пользуюсь (iocomp Plot Pack - отличный продукт с поддержкой по телефону!), Но у них нет версии WPF и, похоже, она не заинтересована в ее создании. У них есть доступные версии ActiveX и WinForms, но я бы предпочел использовать чистое решение WPF, если это возможно.

Самая важная особенность сюжета для моего приложения - скорость. В настоящее время я собираю до миллиона точек двойных данных за раз и выполняю это за пару секунд. По мере развития моего приложения наборы данных будут увеличиваться в размере. Конечно, есть и другие функции, которые мне нужны: множественные трассы (каналы), масштабирование с резинкой, аннотации, определяемые пользователем заполненные области и т. Д.

Теперь перейдем к моим вопросам:

1) Есть ли элемент управления WPF, который обеспечит мне нужную скорость?

2) Смогу ли я разместить версии ActiveX (предпочтительнее, поскольку они быстрее) или WinForms в окне WPF без ущерба для функциональности сюжета, такой как интерактивность?

3) Если мне нужно использовать элемент управления ActiveX или WinForm, можно ли это сделать таким образом, чтобы элемент управления сюжетом выглядел «правильно», как если бы он был встроенной частью набора элементов управления WPF, а не чем-то, что нам нужно «бить, чтобы соответствовать, и рисовать, чтобы соответствовать», как мы говорили на флоте.

4) Существуют ли примеры использования нетривиальных элементов управления ActiveX в приложениях WPF?

Спасибо!

Ответы [ 3 ]

1 голос
/ 13 ноября 2011

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

http://msdn.microsoft.com/en-us/library/ms751761.aspx

В WindowFormsHost в коде позади должен быть добавлен элемент управления plot (хорошее место - функция загрузки Windows).

Обратите внимание, что для этого .Net Framework должен быть установлен .Net 4, а НЕ .Net 4 (профиль клиента).

0 голосов
/ 26 января 2010

Я ищу именно то, что вы ищете. У меня есть прототип приложения, созданный в Labview, и теперь он мигрирует в WPF; и я должен соответствовать скорости и гибкости графиков Labviews.

Вам посчастливилось найти что-то, что близко соответствует вашим потребностям? Я изучил Telerik и DxCharts Infragistics ... они, как правило, больше ориентированы на небольшие участки данных и больше ориентированы на простоту использования, чем на производительность.

Я полагаю, что наша лучшая надежда - пойти на что-то вроде http://dynamicdatadisplay.codeplex.com/ и заставить его работать в наших ситуациях. Хотя это потребует некоторой работы.

0 голосов
/ 26 ноября 2009

Вы просматривали пользовательский элемент управления WPF?

Ознакомьтесь с шаблоном управления WPF.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...