Родительская страница обратной передачи при использовании элемента управления ASP.NET ModalPopup

У меня есть настраиваемый UserControl, который отображает модальное всплывающее окно (из Ajax Toolkit). Этот элемент управления позволяет пользователю добавлять примечание к записи о клиенте, которую родительская страница отображает в GridView.

Я не могу заставить родительскую страницу перезагружать сетку после того, как пользователь щелкнет кнопку «Добавить примечание» в модальном всплывающем окне и закроет его. Заметка добавлена ​​в базу данных правильно, но мне нужно вручную обновить страницу, чтобы она отображалась, а не автоматически, когда я сохраняю + закрываю всплывающее окно.


person user543761    schedule 15.12.2010    source источник


Ответы (1)


Вы можете использовать делегата для запуска события на родительской странице после добавления заметки в базу данных.

// Declared in Custom Control.
// CustomerCreatedEventArgs is custom event args.
public delegate void EventHandler(object sender, CustomerCreatedEventArgs e);
public event EventHandler CustomerCreated;

После добавления примечания запускает событие родительской страницы.

    // Raises an event to the parent page and passing recently created object.
    if (CustomerCreated != null)
    {
        CustomerCreatedEventArgs args = new CustomerCreatedEventArgs(objCustomerMaster.CustomerCode, objCustomerMaster.CustomerAddress1, objCustomerMaster.CustomerAddress2);
        CustomerCreated(this, args);
    }

На родительской странице реализуйте необходимое событие для повторного заполнения grdiview.

protected void CustomerCreated(object sender, CustomerCreatedEventArgs e)
{
    try
    {
        BindGridView();
    }
    catch (Exception ex)
    {
        throw ex;
    }
}

В вашем случае вы не можете использовать какие-либо настраиваемые аргументы событий и использовать сам класс EventArgs.

person Ahmed Atia    schedule 15.12.2010