9
我有一個循環:性能幾百個改變的WinForms的位置的控制
for (int i = 0; i < panel1->Controls->Count; ++i) {
Control^ ctl = panel1->Controls[i];
ctl->Location.Y = i*10;
}
它是好,如果我有200個或300控制在PANEL1? 或者它會更好,如果我補充一點:
if (ctl->Location.Y != i*10) ctl->Location.Y = i*10;
我只是不知道.NET的控件將重新繪製無論如何(這需要時間),或者他們會自動檢查是否有沒有必要重繪(還是同一位置)
我認爲你可以暫停渲染/轉發,這可能會加速這段代碼。 – CodesInChaos
在這樣的情況下,你最好的朋友是反射器這樣的反編譯器。 – leppie
@leppie我寧願先對它進行基準測試。 – CodesInChaos