我在一个asp updatepanel中有4个asp列表框。该网站是一个使用vb.net的webforms项目。这些列表框充当数据库表的过滤器。单击第一个列表框时,它会更新与选择相关的剩余列表框。您还可以在这些列表框中多选项目。这是非常重要的。
当您选择多个项目时,列表框的滚动位置重置为顶部会出现问题。假设您选择顶部项目,然后向下滚动到第14项并按住Ctrl并单击以选择两者。这会导致列表框的滚动位置在更新面板过滤剩余列表框导致部分回发后重置为顶部。你可以想象,这对我的客户来说会非常烦人。
我已经看到了其他解决方案来维护更新面板的滚动位置,但不是更新面板内的控件。有什么想法吗?
答案 0 :(得分:0)
我回答了自己的问题。我所做的是利用更新面板的Trigger功能,并将最后3个列表框包含在自己的更新面板中。
第一个列表框不需要位于更新面板中,因为其内容不必更改,具体取决于列表框其余内容的选择。我在其自己的更新面板中包含第二个列表框,并且仅为第一个列表框添加了异步回发触发器。对于第三个和第四个列表框,我还将它们包含在它们自己的更新面板中,并分别为每个前面的控件添加了异步触发器(因此在第三个列表框更新面板上,我为前面的控件添加了2个异步触发器,并为前面的控件添加了3个异步触发器第4个列表框更新面板上的上述控件。)
希望这有助于其他人!