为什么给ImageList.Image.Tag赋值后,该属性还是空?

junyo 2010-01-03 04:55:46
如题,就下面2句,奇怪的是,当我运行的时候读取不到他的值,调试的时候发现给他赋值后,监视显示还是null,这是为什么?
ing n = 1;
imageList.Images[k].Tag = n;
...全文
156 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiexunwei 2011-11-29
  • 打赏
  • 举报
回复
我试过将一个Image.Tag属性赋值,成功了,然后调用Image.Save()保存,重新将图片读进去的时候Tag属性就变味空了,谁知道这是怎么回事啊?是将图片载入的时候Tag会被重新赋值么?
tangshuinet 2011-01-05
  • 打赏
  • 举报
回复
有人知道 是什么原因吗? 我也想知道现在。
tangshuinet 2011-01-05
  • 打赏
  • 举报
回复
我也遇到这个问题了。

image.tag=n; //这里有值

imageList.Images.Add(image);//执行这句后就没有值了。郁闷。估计是图片添加时候,给赋值了。
freeboy827 2010-01-03
  • 打赏
  • 举报
回复
估计是TAG属性没有用
不明白你设置它有什么用
换别的方法吧
junyo 2010-01-03
  • 打赏
  • 举报
回复
我就是一行一行去调试的!一执行完那个语句我就看他的值,都是null,这是为什么啊?
threenewbee 2010-01-03
  • 打赏
  • 举报
回复
ing n = 1;
imageList.Images[k].Tag = n;
这个没有被运行

或者,之后别的地方被修改掉了,比如 imageList 被 Clear 了,或者生命期结束,被重新创建了一个对象。

总之是你程序的问题。

在获取 Tag 的那行上面插入以上代码,应该是能获得的。
linjunmingllinwen 2010-01-03
  • 打赏
  • 举报
回复
哦不太明白
diruob 2010-01-03
  • 打赏
  • 举报
回复
那就换其他的方法写吧,不能一行代码困死人呀
junyo 2010-01-03
  • 打赏
  • 举报
回复
看来这个问题只有微软才能解释了。。。我现在是另外定义一个List<>去储存。暂时不结贴。。看有没有高人出来解释一下!
huohuli008 2010-01-03
  • 打赏
  • 举报
回复
我刚试了下的确不行呀,只有取出来然后再给Tag赋值才行,没办法改List里的;

Image image = imageList1.Images[0];

image.Tag = 123;
  • 打赏
  • 举报
回复
试一下:

Image image = new Bitmap(100, 100);
image.Tag = 90;
Console.WriteLine(image.Tag);


输出 90
结果正确

你这样试一下看看
rcy5211314 2010-01-03
  • 打赏
  • 举报
回复
有一个imageindex好像你试试这个
junyo 2010-01-03
  • 打赏
  • 举报
回复
。。。。。。没有用它弄出来干嘛?tag就是附加属性,能够让我们额外添加需要的数据进去。。。。。。有没有人知道?我baidu就是看到也有人遇到这样的问题,但是没有解决到。。。

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧