我發現了一些令人驚奇的結果而繪製在.NET Framework精簡一些形狀。訪問高度,控制的寬度屬性是在C#較慢
方法1和方法2得出了一些長方形,但方法一快再方法二,這裏是代碼:
方法一:
int height = Height;
for (int i = 0; i < data.Length; i++)
{
barYPos = Helper.GetPixelValue(Point1, Point2, data[i]);
barRect.X = barXPos;
barRect.Y = barYPos;
barRect.Height = height - barYPos;
//
//rects.Add(barRect);
_gBmp.FillRectangle(_barBrush, barRect);
//
barXPos += (WidthOfBar + DistanceBetweenBars);
}
方法2:
for (int i = 0; i < data.Length; i++)
{
barYPos = Helper.GetPixelValue(Point1, Point2, data[i]);
barRect.X = barXPos;
barRect.Y = barYPos;
barRect.Height = Height - barYPos;
//
//rects.Add(barRect);
_gBmp.FillRectangle(_barBrush, barRect);
//
barXPos += (WidthOfBar + DistanceBetweenBars);
}
兩者之間的唯一區別是在Method1
我將該控件的Height
存儲在局部變量中。
任何人都可以請說明理由,並在.NET Compact Framework受圖紙的一些準則?