为什么DataPager需要Pre-Render事件才能工作?

问题描述 投票:0回答:1

必须使用预渲染给我带来了问题..如果我不需要它那就太好了..问题是我在用户控件中有列表,当我转到下一个“页面”时我进行数据绑定..但是然后数据分页器预渲染..它也执行batabind..所以它运行两次..

如果我删除预渲染..然后单击下一个“页面”不会执行任何操作..

有什么想法吗?

   protected void Page_Load(object sender, EventArgs e)
{
    GetSearchResults();
}

//protected void dpMembers_PreRender(object sender, EventArgs e)
//{
//    GetSearchResults();
//}

public void GetSearchResults()
{
    List<Person> listPerson = new List<Person>();
    string strServer = "localhost";
    string strAppPath = Server.MapPath("/");
    PersonBusiness pb = new PersonBusiness(new PersonRepository());
    listPerson = pb.GetAllPersons(strServer, strAppPath);
    lvPersons.DataSource = listPerson;
    lvPersons.DataBind();
}
asp.net listview pagination datapager
1个回答
3
投票

将页面加载修改为

protected void Page_Load(对象发送者, EventArgs e) { if(!Page.IsPostBack) { 获取搜索结果(); } }

你的预渲染看起来没问题。

© www.soinside.com 2019 - 2024. All rights reserved.