|
|
|
Добавление события для контрола по его имени
|
|||
|---|---|---|---|
|
#18+
Приветствую. Появилась такая задача: При программной генерации контролов необходимо добавить к контролу событие по его имени. Чую что надо через reflection, но не могу сообразить как. Код: c# 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 16:10 |
|
||
|
Добавление события для контрола по его имени
|
|||
|---|---|---|---|
|
#18+
Нашел решение, может кому пригодится: Код: c# 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 19:02 |
|
||
|
Добавление события для контрола по его имени
|
|||
|---|---|---|---|
|
#18+
noname-tier, чем Btn.Click += BtnClick; не подходит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 22:06 |
|
||
|
Добавление события для контрола по его имени
|
|||
|---|---|---|---|
|
#18+
Необходимо было добавлять метод по данным, хранящимся в базе и тут мне видится только два варианта: либо через switch case Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. либо приведенный выше. Приведенный выше мне кажется более удобным, так как нет жесткой превязки данных к коду. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2012, 11:54 |
|
||
|
Добавление события для контрола по его имени
|
|||
|---|---|---|---|
|
#18+
noname-tierПриведенный выше мне кажется более удобным, так как нет жесткой превязки данных к коду. Привязка в коду тебе и так понадобится т.к. несуществующий метод-обработчик добавить к событию очеидно не получится. Вместо же switch можно сделать Dictionary<string, EventHandler>. Примерно так: Код: c# 1. 2. 3. 4. 5. 6. 7. Такой метод (также как и вариант со switch), в отличии от варианта с рефлексией, добавляет проверку со стороны компиляторы что методы существуют и их сигнатура соответствует делегату. Кроме того никто не мешает скомбинироватть оба метода на случай если в БД будет новый метод, который суещствует в коде, но не был добавлен в dictionary. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2012, 13:26 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=37781831&tid=1359627]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
165ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 206ms |
| total: | 449ms |

| 0 / 0 |
