views:

133

answers:

5

My current task is to develop a software for measurement and testing purposes which will communicate with various devices. Because i have to assume that there will be a high amount of data transferred from the devices that needs to be displayed in some plotting component or similar, the UI framework used should be as fast and responsive as possible.

I have a few years experience in WPF, but i think it will not be the best choice performance-wise. I am considering using Windows Forms at the moment, but i would like to explore some options first.

Do you know any good UI frameworks for .NET (wrappers for native frameworks are fine, too) and what is your experience using them? Thanks!

+4  A: 

Build a prototype to see if there are actually performance problems.

Choosing Windows Forms over WPF seems questionable if it is purely based on assumptions.

0xA3
A: 

Sounds like the extra precision of WPF would make this an ideal candidate.

Funny enough while typing this there is an ad next to me typing this which says Radcontrols for WPF when you are serious about performance, with some plotting in it.

Might be what your looking for :)

Also keep in mind that WPF got quite a performance boost with the 4.0 release.

Mischa Kroon
+2  A: 

So, let's say you have 1.000 readings per second. Do you really think you should refresh display 1000 times per second?

Such display would be meaningless. There would be too much flicker on screen. If you display text data - it would scroll too fast or it would flicker and it could not be read.

Movies display 24 frames per second, everything faster than that is irrelevant for human eyes. What can you get if your system displays more changes per second? Humans cannot react that fast. So if you need system adjustment several times per second, than you must have some automatic systems.

You should generally reconsider goals that you want to accomplish with your UI.
Search Google for "Dashboard Design".

I worked on system that controlled water wells (pumps and valves) some 12-13 years ago when state of the art was Pentium II. We did it with Delphi 2 and Windows NT and it had nice graphic representation of system. Performance problematic part were serial interfaces that we used for reading data. Display was way faster than that.

zendar
A: 

I think .Net form should work, since VB6 UI does.

I developed similar application which plots Line Graph on screen but it was in VB6, and also same time it logs the data in txt file. there are 700 + read per second(Analog to Digital signal conversion).

You may need to plot the data by coding(not using third party control), its another option.

Hope this will give you some idea.

paragy
A: 

You could use XNA or some other 3D api to draw the graphics but this might be overkill.

atamanroman