我遇到了一个简单的问题,但无法弄清楚解决方案 我有一个asp.net应用程序,当按下完成按钮时,它根据列表框中的过滤器和更新查询数据读取器中的一些数据。问题是如果我修改选择并再次按Done,旧值仍然存在,即我得到旧结果并附加新的结果。如何删除旧值,以便每次修改我的选择时,我只获得新值。
答案 0 :(得分:3)
首先,如果您正在加载Page_Load中的值,请确保使用if(!Page.IsPostback)
语句包围加载代码,以确保您不会在每次加载时重新绑定它。 (有关详细信息,请参阅ASP.NET Page Lifecycle。)
if(!Page.IsPostback)
{
// Binding code goes here.
}
(或者,您可以在Page_Init中的每个页面加载而不是Page_Load上绑定它,这将允许您绑定它并在应用Viewstate时应用用户条目。再次,请参阅页面生命周期以获取详细信息。或this great article。)
接下来,确保在列表框中调用Clear()命令以删除项目。
MyListBox.Items.Clear()