我在Form中将图像添加到资源中,并将其设置为按钮的背景图像。 如何通过程序化获取按钮背景图像的名称。
答案 0 :(得分:3)
您无法检索图像的名称。
您可以做的是设置图像时:将图像的名称存储在Button的Tag属性中。
只要您将Tag属性与图像保持同步,就可以检查Tag属性。
更好的方法是对Button进行子类化并添加一个存储名称的属性。
答案 1 :(得分:0)
如果您使用Winforms设计器设置了BackgroundImage
属性,则Visual Studio已在.Designer.cs文件中为您生成以下行:
this.button1.BackgroundImage = global::WindowsFormsApplication5.Properties.Resources.my_image_name;
如您所见,它会将System.Drawing.Bitmap
类型的值影响到System.Drawing.Image
类型的属性。 您在此处获得的唯一信息是图片本身。
如果您自己添加了图片:
string resourceKey = "my_image_name";
this.button1.BackgroundImage = (System.Drawing.Image)Properties.Resources.ResourceManager.GetObject(resourceKey);
然后你已经拥有了资源的名称......
如果它没有回答你的问题,那么请更清楚。