我有一個方法可以遍歷數據集合,根據從數據庫中檢索的集合中的數據構建位圖,最後將構建的位圖添加到我稱爲DoorSchedules的集合中。什麼時候處理圖形對象
在我的循環中,如果我在圖形上調用.dispose,我會收到一個錯誤消息。當我不調用屬於Graphics對象的.dispose方法時,不會發生此錯誤。
當我循環時應該在圖形對象上調用dispose時,是否爲每個循環創建一個新的圖形對象?
下面的代碼工作,直到我取消註釋dc.Dispose。
DoorSchedules schedules = new DoorSchedules();
for (byte i = 0; i < elevation.Bays.Count; i++)
{
if (elevation.Bays[i].HasDoor.Value)
{
for (byte ii = 0; ii < elevation.Bays[i].Doors.Count; ii++)
{
door = elevation.Bays[i].Doors[ii];
width = getInchPx(door.WidthInches);
height = getInchPx(door.HeightInches);
Bitmap canvas = new Bitmap((int)width + DOOR_SCHEDULE_WIDTH_ADD,
(int)height + DOOR_SCHEDULE_HEIGHT_ADD);
Graphics dc = Graphics.FromImage(canvas);
..work removed for readability for stackoverflow.
schedules.Add(new DoorSchedule(canvas));
//dc.Dispose();
};
};
};
「我收到一個錯誤」。謹慎與我們分享? –
什麼方法調用會給你一個錯誤,什麼是錯誤? –
由於某些奇怪的原因,我無法重現錯誤。當它再次拋出時,我會發布錯誤。 –