伙计们,我有一个动态的简单对象列表,每个对象都会订阅一个事件来触发你点击。
该事件,其作用是从基础中删除该对象,然后再次渲染对象,其中该事件应再次重新订阅。
private void BindTable()
{
PersonsManager manager = new PersonsManager();
pnlPersons.Controls.Clear();
foreach (var person in Persons)
{
PersonControl personControl = (PersonControl)Page.LoadControl("~/Widgets/PersonControl.ascx");
personControl.Person = person;
personControl.BeginSelect += new SelectPersonEventHandler(personControl_BeginSelect);
pnlPersons.Controls.Add(personControl);
}
}
protected void personControl_BeginSelect(object sender, SelectPersonEventArgs e)
{
PersonsManager manager = new PersonsManager();
manager.DeletePerson(e.Person.Id);
Persons.Remove(e.Person);
BindTable();
}
问题是,一旦第一次触发事件,它就会回发并重新加载列表。但是如果我想在另一个项目中再次拍摄这个事件,我会点击两下来工作!。
可以解决这个问题吗?知道了吗?
我希望我能帮忙! 问候!