gpt4 book ai didi

c# - 何时处置图形对象

转载 作者:可可西里 更新时间:2023-11-01 11:56:42 27 4
gpt4 key购买 nike

<分区>

我有一个循环遍历数据集合的方法,根据从数据库检索到的集合中的数据构建位图,最后将构建的位图添加到我称为 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();
};
};
};

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com