C# 如何根据单选按钮使同一图像的多个分辨率可用?

C# 如何根据单选按钮使同一图像的多个分辨率可用?,c#,winforms,C#,Winforms,我有一个ToolStrip,里面有几个ToolStripButton,都包含位图。我希望能够将图像的副本拖动到已设置的绘图面板上,但我希望能够从小、中或大文件大小(32x32、64x64、128x128)中进行选择。我有三个相应大小的单选按钮。起初,我想把这三个图像文件放在一个ImageList中,然后用它们相关的tsButton连接起来,但是1)我不知道如何用ToolStripButtons设置ImageList只有普通的按钮才可能。。2)这将是一个极端的工作量为50左右的ToolStripB

我有一个ToolStrip,里面有几个ToolStripButton,都包含位图。我希望能够将图像的副本拖动到已设置的绘图面板上,但我希望能够从小、中或大文件大小(32x32、64x64、128x128)中进行选择。我有三个相应大小的单选按钮。起初,我想把这三个图像文件放在一个ImageList中,然后用它们相关的tsButton连接起来,但是1)我不知道如何用ToolStripButtons设置ImageList只有普通的按钮才可能。。2)这将是一个极端的工作量为50左右的ToolStripButtons我将在年底

我正在寻找一个更好的解决方案,我愿意接受各种想法。我正在考虑使用预定义的字符串(如“C:\bitmaps\theimageLarge.png”)从文件中打开图像,在该字符串中,我将与大小(即小、中或大)相关的字符串与原始图像位置连接起来,然后在末尾添加适当的扩展名。然而,我相信只有在图像列表中才能用这种方式打开文件。。。这让我回到了#2,以及在每个ImageList中有50多个ImageList,每个ImageList具有相同图像的3种不同分辨率


欢迎提出任何建议

以下是我提出的解决方案:

我的目标:我希望我的“图表”实际上是ToolStripButtons,能够通过右边的一组单选按钮(小、中、大)动态确定它们的大小

我所做的:普遍同意一个命名约定,并为所有ToolStripButton提供了与其按钮相关的适当“文本”属性,即简单的“uturn”、“stop”、“construction”等。我还在每个单选按钮上填写了“Text”属性,分别给出了“Small”、“Medium”和“Large”

所有单选按钮的OnClick都有相同的EventHandler,它只需更改我在应用程序的MainForm中声明的大小字符串的值

然后我有一个事件处理程序来处理所有ToolStripButtons的MouseDown事件,里面的代码就是这样的

        ToolStripButton thisButton = (ToolStripButton)sender;
        var temp = Resources.ResourceManager.GetObject(thisButton.Text + size);
        thisButton.DoDragDrop((Image)temp, DragDropEffects.Copy);

“我的资源”文件夹中的每个图表都有三个不同的文件。“stopSmall”、“StopMiddle”、“stopLarge”等

分享您的一些代码,我们将帮助您找到解决方案。我不是在寻找代码更正,而是设计实现帮助,我主要想知道这是否可能,以及是否有比我所说的更简单的方法。