手动添加资源文件(Visual Studio)

时间:2010-02-03 16:29:09

标签: .net visual-studio-2005 resources custom-controls

我在VB.NET(VS 2005)中有一个解决方案

在这个解决方案中,我有一个自定义控件,它继承自一个抽象类。

现在,由于VS是VS,它不希望在设计器中显示控件,因为它的父级是抽象的。

现在,我想在此控件中添加带有图像(bmp或ico)的图片框。 通常我已经完成了这个打开设计师并拖动图片框,选择背景中的图像。

但是由于设计师不可用,我该如何将图像添加到我的控制中?

1 个答案:

答案 0 :(得分:2)

您有两种选择:

<强> 1。将图像添加为项目资源,然后在运行时创建并添加PictureBox控件。

这有点乱,但解决了这个问题。将图像添加到项目资源。并在运行时执行以下操作:

PictureBox pb = new PictureBox();
pb.Image = (Bitmap)global::MyProject.MyImage;

myCustomControl.Controls.Add(pb);
pb.Location = new Point(x,y);  
// and any other properties that need setting

<强> 2。修复控件的设计时属性

这是更好的长期解决方案。 MSDN有很多关于“Designer”属性的信息,它有点像在设计模式下运行的代码,因此您可以与Visual Studio中的控件进行交互。有时VS很擅长为你设计一些设计部件,有时候你必须给它一些帮助。仅仅因为控件基于抽象类并不意味着你无法为它设置设计器。