2014-02-06 3 views
3

Некоторое время назад я использовал конструктор для создания ImageList для ListView. Теперь я ищу эти изображения и код, управляющий ImageList, но не могу найти его. "Найти все ссылки" не показывает все это (я думал, это будет в InitializeComponent).ImageList создан в Designer - где код?

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

Я не могу найти изображения в любом месте в Обозреватель решений.

Должно быть ясным - изображения do показать во время выполнения.

+0

Знаете ли вы, что если вы импортируете изображения в 'ImagesList' с помощью конструктора, то они сохраняются в ресурсах формы, правильно? – Sinatr

+0

@ Синат № Нет, я не знал, где. Но в любом случае они не отображаются в ** Ресурсах ** - ни в Ресурсе-Дизайнере, ни в Ресурсной папке. – ispiro

+0

Проверьте 'Form1.resx'. – Sinatr

ответ

3

Когда вы добавляете ресурс в форму (ImageList, form Icon и т. Д.), Она будет сохранена в виде ресурсов (resx-file).

Они автоматически загружаются в метод InitializeComponent(), который вызывается в конструкторе формы.

private void InitializeComponent() 
{ 
    System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1)); 
    ... 
    this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream"))); 
    ... 
    this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); 
    ... 
} 
Смежные вопросы