【发布时间】:2012-05-28 09:43:33
【问题描述】:
有没有办法将项目添加到下拉列表(或任何其他带有列表的控件),并且当 SelectedIndexChange 发生时,它不会在每次该事件发生时继续添加所有项目? 我想一种方法是在添加代码之前清除列表,但还有另一种方法吗?
【问题讨论】:
标签: c# asp.net autopostback
有没有办法将项目添加到下拉列表(或任何其他带有列表的控件),并且当 SelectedIndexChange 发生时,它不会在每次该事件发生时继续添加所有项目? 我想一种方法是在添加代码之前清除列表,但还有另一种方法吗?
【问题讨论】:
标签: c# asp.net autopostback
您似乎正在向Page_Load 事件的列表中添加项目。如果你这样做,在这种情况下,当SelectedIndexChanged 出现时,它会再次添加这些项目。您可以检查其 PostBack 是否不添加项目。
if(!Page.IsPostBack) // First time only
{
//Add items to list
}
【讨论】:
在 Page_Load 事件中检查 Page.ISPostBack。
if (!page.IsPostBack)
{
//Fill the Drop down
}
【讨论】:
我假设您在 PageLoad 事件内的 PostBack 上绑定下拉菜单。使用
if(!Page.IsPostback)
{
//do the binding here ...
}
当您的页面回发时(下拉值更改后,它不会再次绑定,因为该页面不是新加载的,它现在是回发)
【讨论】: