我正在动态加载用户控件。我添加了一个事件处理程序,它在调试时触发并返回正确的结果。但是,我正在从获得的结果中填充网格。尽管我得到了结果并且 gridview 被填充(如调试所示)。但是不显示填充的网格视图,而是显示网格视图。我不知道错误在哪里。
protected void Page_Load(object sender, EventArgs e)
{
lblMessage.Visible = false;
UCAdvancedFilter.sendMessageToThePage += new AdvancedFilter.SendMessageToThePageHandler(OnsendMessageToThePage);
}
背后的代码
protected void OnsendMessageToThePage(string id)
{
GroupMasterClass gm = new GroupMasterClass();
gm.igroup_id = Convert.ToInt32(id);
ResultClass objres = gm.fn_GetAdvancedSearchById();
if (objres.bStatus)
{
eslist<GroupMasterClass> OBJLIST = objres.objData as eslist<GroupMasterClass>;
if (OBJLIST.Count > 0)
{
grid.DataSource=OBJLIST;
grid.DataBind();
}
}
}
用户控制
public delegate void SendMessageToThePageHandler(string messageToThePage);
public event SendMessageToThePageHandler sendMessageToThePage;
#region Events
protected void btnCloseMsg_Click(object sender, EventArgs e)
{
Panel1_ModalPopupExtender.Hide();
}
protected void btnSearch_Click(object sender,EventArgs e)
{
if (sendMessageToThePage != null)
{
sendMessageToThePage(hdnResult.Value);
}
}
在进一步调试和检查中,我发现再次单击按钮时会显示结果。
谢谢