使用ASP.NET ModalPopup控件时回发父页面

时间:2010-12-15 18:44:04

标签: ajaxcontroltoolkit modalpopupextender webforms

我有一个自定义UserControl,显示模式弹出窗口(来自Ajax Toolkit)。该控件允许用户将注释添加到父页面在GridView中显示的客户记录。

在用户单击模态弹出窗口上的“添加注释”按钮并关闭它后,我无法强制父页面重新加载网格。该注释正确地添加到数据库中,但我必须手动刷新页面以使其显示而不是在我保存+关闭弹出窗口时自动刷新。

1 个答案:

答案 0 :(得分:0)

在将注释添加到数据库后,您可以使用委托在父页面中触发事件。

// 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类本身。