正在开发自定义控件并希望放置自定义图标。为此,尝试使用[ToolboxBitmap(“MyResourcePictureFileName”)]属性中的解决方案资源文件,但未设置图标,而是显示默认用户控件图标。而固定路径工作正常
例如,[工具箱位图(@“C:\frame.bmp”)]
但我不想用绝对位置。
**问题:**如何使用控件的自定义图像/图标
下面是我代码:
*注意:*frame.bmp已在我的资源中,并且操作属性=嵌入资源用于生成
// DONT WANT TO USE THIS --> [ToolboxBitmap( @"C:\frame.bmp")]
[ToolboxBitmap("Resources.frame.bmp")]
[ToolboxItem(true)]
public partial class MyCustomPanelControl : Panel
{
................
................
}
请指教,
谢谢
3条答案
按热度按时间qybjjes11#
资源名称不正确,顺便说一句,这是工具箱位图的一个长期问题。首先确保您正确嵌入了位图,不要****使用资源设计器:
注意.mresource名称,这是您放入属性中的名称。修复:
将“DefaultNamespace”替换为实际名称。
5anewei62#
如果您将图像保存为资源,并尝试使用Properties.Resources.YourImage获取其路径,则无法正常工作,因为Resources返回的是图像对象,而不是您所期望的路径。
如果您希望这样做,请编辑注解以接收图像对象或将图像保存到临时文件,然后使用其路径,如中所示:
然后您可以:
w8f9ii693#
我发现了一些有用的东西:如果您将图像添加到路径
c#
并不为该路径创建命名空间,则可以将空类添加到该路径并使用typeof(thatClass)
,例如:注1:
ImageLoader
为空类注意2:确保您的图像是嵌入资源