2012-12-12 64 views
3

綁定到16000點綁定速度非常慢。C#WPF工具包圖表:綁定16k點速度

我有圖表(WPF工具包):

<chartingToolkit:Chart ... DataContext="{Binding Data}" ... > 

數據處於視圖模型一個屬性(MVVM模式我使用):

public List<Point> Data { get { return series; } } 

系列是一個字段:

private List<Point> series; 

在ViewModel的構造函數中:

for (... ; ...; ...) 
{ 
    y = ... 
    series.Add(new Point((i * scale), y)); 
} 

當我嘗試綁定圖表到數據程序將凍結大約1-2分鐘,然後確定。我在WinForms上做了同樣的程序 - 速度是完美的。任何想法如何解決這個綁定問題?

+2

我可能是錯的,但它是否有必要讓圖表有16k點? – DHN

回答

0

最好的辦法是減少點數。您通常會注意到,在控件上擁有大量WPF元素會導致性能問題,並且通常他們的WinForm計數器部件都很好。

在圖表的情況下,我想象的是使用圓和線,並在WPF樹結構中記住,以便WPF記住16k個元素。嘗試在WPF中嵌入WinForms圖表可能會更好,但更像是一個畫布,並且一旦被繪製爲忘記點...