我有一个自定义UserControl,显示模式弹出窗口(来自Ajax Toolkit)。该控件允许用户将注释添加到父页面在GridView中显示的客户记录。
在用户单击模态弹出窗口上的“添加注释”按钮并关闭它后,我无法强制父页面重新加载网格。该注释正确地添加到数据库中,但我必须手动刷新页面以使其显示而不是在我保存+关闭弹出窗口时自动刷新。
答案 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类本身。