Добавить файл ресурса вручную (Visual Studio) - PullRequest
2 голосов
/ 03 февраля 2010

У меня есть решение в VB.NET (VS 2005)

. В этом решении у меня есть пользовательский элемент управления, который наследуется от абстрактного класса.он не хочет отображать элемент управления в конструкторе, потому что его родитель является абстрактным.

Теперь я хочу добавить к этому элементу управления графическое окно с изображением (bmp или ico).Обычно я делал это, открывая конструктор и перетаскивая окно рисунка, выбирая также изображение в фоновом режиме.

Но так как дизайнер недоступен, как я могу добавить добавление изображения в свой элемент управления?

1 Ответ

2 голосов
/ 03 февраля 2010

У вас есть два варианта:

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 довольно хорошо разбирается в некоторых деталях для дизайнера, в других случаях вам нужно помочь. Тот факт, что элемент управления основан на абстрактном классе, не означает, что вы не можете создать для него конструктор.

...