Autor Beitrag
m.keller
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 133

Win xp, Win 7
C# (VS 2008)
BeitragVerfasst: Mo 12.09.16 15:29 
Hallo allerseits,

ich habe mir

www.codeproject.com/...e-Line-Chart-Control

angesehen und dieses für mich erst ein mal nach gebaut ;)

nun habe ich 1024 werte die ich laden möchte.
Leider dauert es sehr sehr lange bis dieses angezeigt werden.

Ich vermute, das durch OnPropertyChange() dieses so lange dauert.
Kann das sein?

Wie werden solche Anwendungen mit größeren Datenmengen erstellt?

_________________
Der gesunde Menschenverstand ist nur eine Anhäufung von Vorurteilen, die man bis zum 18. Lebensjahr erworben hat. (Albert Einstein)
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Mo 12.09.16 15:40 
Zitat:
Ich vermute, das durch OnPropertyChange() dieses so lange dauert.
Kann das sein?


Nicht spekulieren. Messen!

Zitat:
Wie werden solche Anwendungen mit größeren Datenmengen erstellt?


Mit wirklich großen Datenmengen? In dem man kein custom control nimmt das mit jeder Art Daten umgehen muß und jeden möglichen Anwendungsfall denn sich ein Nutzer ausdenkt irgendwie klarkommen soll sondern in dem mann was schreibt das genau auf das Problem zugeschnitten ist und alles weglässt was im allgemeinen notwendig ist aber im speziellen unnötig ist.
m.keller Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 133

Win xp, Win 7
C# (VS 2008)
BeitragVerfasst: Mo 12.09.16 15:57 
Also in dem Augenblick wo ich

ausblenden C#-Quelltext
1:
 DataCollection.Add(ds);					


hinzufüge, dauert es 11,75 Sekunden bis sich die Anwendung wieder bedienen lässt.

Wenn ich die Anwendung Vergrößer, dauert es wieder so lange.
Somit wird es daran liegen, das die Punkte immer wieder neu errechnet werden.

Aber wie soll man das schneller bekommen?

Oder ist in dem Beispiel ein Fehler?

_________________
Der gesunde Menschenverstand ist nur eine Anhäufung von Vorurteilen, die man bis zum 18. Lebensjahr erworben hat. (Albert Einstein)
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Mo 12.09.16 19:38 
Mit der Zeile schwimmst du nur an der Oberfläche. Du mußt schon näher ran um rauszufinden was da wie lange dauert. Wenn du nicht weiter in den Code reinsteppen kannst dann hilft dir ein Profiler. Visual Studio (zumindest viele Editionen von VS) bringen schon entsprechende Profiler mit.

Für diesen Beitrag haben gedankt: m.keller
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 12.09.16 19:42 
- Nachträglich durch die Entwickler-Ecke gelöscht -

Für diesen Beitrag haben gedankt: m.keller
m.keller Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 133

Win xp, Win 7
C# (VS 2008)
BeitragVerfasst: Di 13.09.16 11:35 
Danke für die Ratschläge :)

Ich habe den Fehler nun gefunden.
Ich hatte im Xaml den YTick und YTick Nicht angegeben.

ausblenden XML-Daten
1:
    <chart:LineChart DataCollection="{Binding DataCollection}" YLabelLinks="[m]" XLabel="[sec]" YLabelRechts="" Xmin="0" Xmax="7" XTick="1" Ymin="0" Ymax="{Binding YMax}" YTick="0.5" Title="Chart" GridlinePattern="Dot" GridlineColor="Blue" />					


Deswegen brauchte das Chart so lange.

_________________
Der gesunde Menschenverstand ist nur eine Anhäufung von Vorurteilen, die man bis zum 18. Lebensjahr erworben hat. (Albert Einstein)