![]() |
|
Модераторы: gambit, Kefir, Partizan |
![]()
|
|
| ДобренькийПапаша |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1278 Регистрация: 14.1.2006 Где: г.Москва Репутация: 2 Всего: 7 |
Есть UserControl, представляющий собой экранную клавиатуру.
То есть, он содержит кучу кнопок. Этот UserControl я использую в куче окон. И в каждом окне приходится прикручивать заново все обработчики событий ко всем кнопкам. Мне по клику надо вписывать в текстбокс значение нажатой кнопки, но как я это могу сделать не имея обработчика (в случае если обработчики я прикручу в самом UserControl)? Приходится везде прикручивать по новой. partial methods не помогают - нужно делать partial classes - а я не могу тут так. -------------------- Меня зовут Себастьян Парейра, торговец чёрным деревом. |
|||
|
||||
| -Mikle- |
|
|||
![]() Невидимка Vingrad'а ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1672 Регистрация: 22.6.2003 Где: Казахстан, Астана Репутация: 13 Всего: 59 |
1) Можно в UserControl определить свое событие со своей сигнатурой. Обработчик кнопок находится в UserControl, там делаешь что нужно и дергаешь свое событие. В остальном коде подвешиваешься только на свое событие UserControl.
2) Можешь сделать свой контрол самонастраивамым. Например, вызывать из конструктора окна некий метод в нем, в который передавать ссылку на окно, которое содержит этот контрол. В этом методе можешь сделать что тебе нужно. 3) Есть класс System.Windows.Forms.SendKeys (ну что поделать, если в WPF нету). Он служит для отправки строковой последовательности окну в фокусе. Если твой контрол не берет на себя фокус при клике (или умеет возвращать его предыдущему окну), то работать будет. В этом случае контрол вообще не надо привязывать и нужно(!) его разместить в отдельном не модальном TopMost окне, которое отображать один раз при старте проги. -------------------- Если тебе плюют в спину, значит ты впереди... |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | WPF и Silverlight | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |