Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在WinC窗体中获取按钮背景图像的名称#_C#_.net_Winforms_Button_Resources - Fatal编程技术网

C# 如何在WinC窗体中获取按钮背景图像的名称#

C# 如何在WinC窗体中获取按钮背景图像的名称#,c#,.net,winforms,button,resources,C#,.net,Winforms,Button,Resources,我在表单中将图像添加到资源中,并将其设置为按钮的背景图像。 如何通过编程获取按钮背景图像的名称。?您无法检索图像的名称 您可以在设置图像时执行以下操作:将图像的名称存储在按钮的Tag属性中 然后,只要与图像保持同步,就可以检查标记属性 更好的做法是对按钮进行子分类,并添加一个存储名称的属性。如果您使用Winforms designer设置了BackgroundImage属性,Visual Studio会在.designer.cs文件中为您生成以下行: this.button1.Backgroun

我在表单中将图像添加到资源中,并将其设置为按钮的背景图像。
如何通过编程获取按钮背景图像的名称。?

您无法检索图像的名称

您可以在设置图像时执行以下操作:将图像的名称存储在按钮的Tag属性中

然后,只要与图像保持同步,就可以检查标记属性


更好的做法是对按钮进行子分类,并添加一个存储名称的属性。

如果您使用Winforms designer设置了
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);
那么您已经有了资源的名称


如果它不能回答您的问题,请澄清。

图像没有名称。在您自己添加了原始文件名或资源名之后,您应该知道原始文件名或资源名没有问题。即使我知道资源名,如何将其与按钮背景图像名进行比较?您不知道,背景图像没有名称。您需要解释您真正想要做的事情,这完全是不必要的。@arunkumarnonascii您不知道原始文件的名称和分配给控件的图像对象的“名称”。后者不存在;它只是内存中的一个图像对象。