Reputation: 1047
I currently have a Win32 application (developed in C++ Builder/VCL) which I am redesigning from the ground up for WPF 4.
One of the core functions in the app is drawing engineering/scientific plots. I love the control I'm using now (iocomp Plot Pack - excellent product with phone support!), but they don't have a WPF version and don't seem interested in creating one. They do have ActiveX and WinForms versions available, but I'd rather stick with a pure WPF solution if possible.
The single most important plot feature for my app is speed. I currently plots up to a million points of double data at a time, and accomplishes this in a couple of seconds. As my app evolves the data sets will expand in size. Of course there are other features I need as well: multiple traces (channels), rubber band zooming, annotations, user definable filled areas and so forth.
Now on to my questions:
1) Is there a WPF control which will provide me the speed I'm looking for?
2) Will I be able to host the ActiveX (preferred as it's faster) or WinForms versions in a WPF window without sacrificing plot functionality such as interactivity?
3) If I must use an ActiveX or WinForm control, can this be done in such a way that the plot control looks 'right', as if it were a native part of the WPF control set rather than something we had to 'beat to fit and paint to match' as we used to say in the Navy.
4) Are there examples of using non-trivial ActiveX controls in WPF applications?
Thanks!
Upvotes: 2
Views: 2138
Reputation: 21
One of the ways to do this is to include a windows forms host in the WPF app to host the plot. More info can be found at
http://msdn.microsoft.com/en-us/library/ms751761.aspx
To the WindowFormsHost the plot control is to be added in the code behind (a good place is the windows load function).
Do note that the .Net framework for this should be set to .Net 4 and NOT .Net 4 (Client Profile).
Upvotes: 1
Reputation:
I am looking for exactly what you are looking for. I have a prototype application done in Labview and now migrating to WPF; and I have to live up to Labviews speed and flexibility of graph plots.
Have you had any luck finding anything that comes close to your needs? I looked into Telerik and DxCharts Infragistics... they tend to be more geared towards small data plots and are focused more on the ease of use than the performance side of things.
I guess our best hope might be to go for something like http://dynamicdatadisplay.codeplex.com/ and make it work for our situations. It is going to require some work though.
Upvotes: 0
Reputation: 63200
Have you looked into a custom WPF control?
Have a look into WPF Control Template.
Upvotes: 0