Событие в пользовательском контроле не возникает

У меня есть пользовательский элемент управления, который содержит сетку и несколько кнопок. Я объявляю событие GridAfterRowActivate для пользовательского контроля:

public event EventHandler GridAfterRowActivate;
private void Grid_AfterRowActivate(object sender, EventArgs e)
{
    if (GridAfterRowActivate != null)
        GridAfterRowActivate(sender, e);
}

Я добавил этот пользовательский элемент управления в свою форму. Когда я заполняю сетку в конструкторе формы, событие GridAfterRowActivate не возникает. Но когда я заполняю сетку в Form_Load, это событие работает правильно.


person user559736    schedule 22.01.2012    source источник
comment
Трудно представить, что строка может быть активирована, когда форма все еще строится. Получите помощь на каналах поддержки Infragistics, forums.infragistics.com   -  person Hans Passant    schedule 22.01.2012
comment
Легче помочь, если вы скажете, почему вы не можете пойти по маршруту Form_Load?!   -  person Morten Bergfall    schedule 23.01.2012


Ответы (1)


Я предполагаю, что это потому, что вы заполнили элемент управления в конструкторе, но событие Init элемента управления не вызывается до тех пор, пока страница не PreInit. Вы должны заполнить элемент управления как можно раньше в событии страницы Init.

person Skyrim    schedule 22.01.2012
comment
Мое решение - это приложение для Windows, а не веб-приложение. - person user559736; 22.01.2012