Шаги для воспроизведения поведения:
1. Создайте UserControl
2. Напишите в нём:
- Код: Выделить всё
Event MyEvent(Index As Integer)
3. Закройте дизайнер вновь созданного контрола
4. Поместите экземпляр вновь созданного контрола на форму, задайте ему свойство Index=0
5. Дважды кликните на контроле. Автогенератор вставит код:
- Код: Выделить всё
Private Sub UserControl11_MyEvent(Index As Integer, Index As Integer)
End Sub
6. Если попытаться запустить полученный проект, VB выдаст ошибку:
Microsoft Visual Basic
Compile error:
Duplicate declaration in current scope
Причина: сабж
Обход: переименуйте один или оба из параметров созданного обработчика события. Например, следующий код работоспособен:
- Код: Выделить всё
Private Sub UserControl11_MyEvent(Index1 As Integer, Index2 As Integer)
End Sub
(Автор выражает признательность GSerg-у за помощь в обнаружении и исследовании описанной проблемы)