Как отобразить свойство точечного рисунка настраиваемого элемента управления .NET Compact Framework в конструкторе форм Visual Studio? - PullRequest
3 голосов
/ 24 сентября 2010

У меня есть пользовательский элемент управления (унаследованный от control; нацеленный на .NET Compact Framework v2), который имеет свойство растрового изображения.

В настоящее время экземпляр элемента управления в конструкторе форм будет рисовать только выбранный цвет фона и записывает namespace.control.name overtop.

Как сделать так, чтобы изображение отображалось дизайнером форм после его выбора в редакторе свойств?

Редактировать : элемент управления довольно простой, но я переопределяю onpaint и onpaintbackground

Edit2 : Чтобы определить причину, я написал гораздо более простой элемент управления. Это просто растровое свойство и вызов graphics.drawimage в onpaint (так дешево imagebutton). Это тоже не в состоянии сделать. Я даже включил проверку, чтобы убедиться, что она не пытается отобразить нулевое изображение и никогда не обновлять или что-то еще, но не повезло.

1 Ответ

0 голосов
/ 24 сентября 2010

Вы рисуете вручную (т.е. переопределяете OnPaint и выводите этот растровый рисунок)? Вообще говоря, рендеринг в дизайнере для очень элементарного управления должен работать.

Вы получите ящик с именем элемента управления, если разработчик нажмет на что-то, с чем он не может справиться (пример P / Invoke fore), и поэтому вам часто приходится «защищать» код, специфичный для устройства, от его вызова дизайнер.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...