2013-03-20 77 views
1

可能嗎?在wpf中顯示大量快速變化的數字

我們一直在使用我們的數據網格存在一些性能問題,並嘗試了許多技巧和竅門來改進它(例如herehere)。這些都沒有太大區別。

我將問題簡化爲畫布上的屏幕值TextBlock s。即使這會導致幀率下降到1 /秒以下,並吃掉整個CPU。此時wpf performance monitor停止運行,但窗口尺寸較小時,佈局和渲染大約分爲50/50。

有沒有辦法讓wpf顯示這類數據,還是我們需要切換到更低的級別?這個WPFTextBenchmark似乎暗示默認的wpf文本顯示比其他方法慢很多。

編輯,其他信息:

與textboxs畫布背後的想法是爲了減少佈局計算,作爲一個文本塊的位置將被他人影響。

編輯迴應評論:

1)我們正在尋找數百個細胞(大約值得一屏),許多更新多次第二,有些可能是幾分鐘不變。然而,我們並不關心那些更爲迅速的更新(比如說5秒)。

2)我們使用INotifyPropertyChanged和DataBindings來更新UI。

+1

哪種類型的應用程序,多少個網格單元頻繁更改等, – TalentTuner 2013-03-20 05:53:43

+0

如何更新UI,DataBinding或直接佈局更新? – 2013-03-20 05:54:41

回答

1

您可能想要查看除綁定之外的其他更新值的方法。綁定傳統上很慢,將控件綁定到所有數據可能會更好,並讓控件找出如何獲得所需的實際值。

另一個想法是,而不是整個數據驅動(數據更改 - > UI更新),而不是UI驅動(UI刷新每5秒 - >從數據中提取最新值)。這不是在WPF中做事的通常方式,但它的工作原理。