я создал свой собственный контроль и перезаписать OnPaint событие, проблема заключается в том, что событие краска перестала работатьне может вызвать краску
Любые идеи, почему? И как его восстановить?
я создал свой собственный контроль и перезаписать OnPaint событие, проблема заключается в том, что событие краска перестала работатьне может вызвать краску
Любые идеи, почему? И как его восстановить?
Давайте телепатическая догадка здесь:
Вы забыли вызвать base.OnPaint(...)
внутри переопределения. Это означает, что базовая функциональность больше не вызывается.
Психическая отладка; всегда весело :) –
+1: Это 90%, вероятно, проблема. –
не забыл, я сделал это нарочно, это единственный способ вернуть событие краски? – unicorn
Возможно, контроль затенен. У меня была аналогичная проблема, и проблема заключалась в том, что форма в представлении «Дизайнер» была больше, чем фактическая форма при запуске приложения. У моего пользовательского элемента управления были привязки со всех сторон, и когда основная форма была уменьшена в размерах, пользовательский элемент управления достиг нулевого размера (на самом деле, я думаю, отрицательно).
В этом режиме переопределение OnPaint и делегат, назначенный событию Paint, вообще не вызываются.
Увеличьте свою форму и убедитесь, что вы случайно не уменьшили размер до нуля!
код пожалуйста .... – Femaref
Определить «перестает работать» - что происходит (или нет), и в каком сценарии? –
this.Paint + = новый PaintEventHandler (myControl_Paint); – unicorn