2017-09-23 91 views
0

我正在使用WPF中的頻譜分析儀。這些條是包含在網格中的矩形。有128個酒吧,他們每秒更新約31次。該程序做它應該做的事情,唯一的問題是,它似乎是非常重的CPU。WPF高效地更新矩陣陣列的高度,每秒31次

在程序運行時,CPU的使用率約爲30%,當我刪除更新條形高度的代碼以確保它是罪魁禍首時,CPU降低到0-5%。

我試過在網格中覆蓋OnRender,使用DrawingContext.DrawRectangle()繪製矩形並使計時器中的網格無效,但它並沒有更好的效果。

是否有更好的方式來呈現WPF中的頻譜分析儀的條形圖?

+0

你見過這個問題嗎?你使用'WritableBitmap'還是隻使用普通的'Rectangle'對象? https://stackoverflow.com/questions/4447794/fast-drawing-lots-of-rectangles-one-at-a-time-in-wpf –

+0

我正在使用'Rectangle'對象。我將研究這個問題,我對WriteableBitmaps沒有太多經驗。 –

回答

0

如果性能問題,您應該選擇允許在其中託管DirectX場景的D3DImage。檢查this了。