我想切换toolStripButton上显示的图像。但是,我无法找到如何做到这一点。
我认为应该是这样的:
btSearch.Image = new Image("myimage.png");
但它不起作用(新图像似乎不存在)。
感谢您的帮助
答案 0 :(得分:6)
btSearch.Image = Image.FromFile("myimage.png");
不幸的是,在您处理图像之前,文件将被锁定。对于其他解决方案,请参阅问题 ToolStripButton: what's wrong with assigning an image programmatically 。
答案 1 :(得分:2)
我推荐使用Image.FromStream()
方法,因为它不会锁定实际文件。
例如:
using (var stream = File.OpenRead(path))
using (var image = Image.FromStream(stream))
{
//Black magic here.
}
请注意,您必须在图像的生命周期内保持流打开。如果使用相同的流连续调用此方法,则流将重置为零。
这是previous discussion,其中有Jon Skeet的答案。