1

Я написал пользовательский контроль, и я хочу установить свойство Icon в конструкторе. Это свойство должно дать мне возможность выбрать значок из встроенных ресурсов, точно так же, как управление изображениями (свойство Image), но я не могу понять, как это сделать.C# Выбрать значок из ресурсов как свойство во время разработки

К сожалению, нет информации о создании элементов управления с богатой поддержкой времени разработки, но информация, которую я нашел, касается TypeConverters, TypeEditors, но никто не говорит мне, как добиться того, чего я хочу.

Может ли кто-нибудь указать мне правильное направление?

+1

Единственный встроенный UITypeEditor является IconEditor, вы уже получили, что один. Я не думаю, что создание собственного (похожего на ImageEditor) варианта, Visual Studio, похоже, имеет жесткую поддержку для него через понятие «расширители изображений». –

+0

Да, я пошел вместо изображений, спасибо. – Fabian

ответ

2

Если вы после чего-то подобного PictureBox управления, вам не нужны какие-то вещи, попробуйте следующее:

public class SimpleImage : Control 
{ 

    public Image Image { get; set; } 

} 
+0

Хм, это действительно то, что я хочу, просто нужно, чтобы это была иконка. Есть идеи? – Fabian

+0

Ive решил прекратить мой, казалось бы, бесконечный поиск и пошел за изображениями вместо икон. Готово! : D – Fabian

0

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

<ToolboxBitmap("c:\MyIcon.bmp")> _ 
    Public Class MyUserControl 
     Inherits System.Windows.Forms.UserControl 

     ' Code for the control. 
    End Class 

Для загрузки из ресурса

<ToolboxBitmap(GetType(MyNameSpace.MyUserControl),"MyIcon.bmp")> _ 
    Public Class MyUserControl 
     Inherits System.Windows.Forms.UserControl 

     ' Generate code 
     ' Code for your control. 
    End Class 

Вот Url для более подробной информации http://support.microsoft.com/kb/311315