GridView.PageIndexChanging会触发,但是没有SelectedIndex受到影响!

时间:2009-04-27 14:53:16

标签: asp.net ajax gridview

我对同一个问题有不同的实现。

与某些数据绑定的gridview,它有一个带有按钮的select列。当按钮单击被触发时,我在调试中知道:sender.SelectedDataKey和sender.SelectedIndex具有我稍后使用的值。

但现在我想使用ajax手风琴控制。我有一个手风琴,里面有一个Pane。在该窗格中,我有一个CollapsiblePanel(使用CollapsiblePanelExtender)。在那个CollapsiblePanel中我有我的Gridview。 因此,只有当我点击collapsiblePanel时,我才想从DB获取数据并将其绑定到GridView。但是当PageIndexChanging激发时,似乎使用此methot发送者.SelectedDataKey和sender.SelectedIndex是Nothing(VB)! 这没有任何意义!

GridView是两个实现中的一些,EnableViewState = true

谢谢。

2 个答案:

答案 0 :(得分:1)

由于Accordion Panel是一个Ajax控件,它可能会在那里添加更新面板,即使你没有在页面中添加一个。由于GridView位于Ajax控件内部,因此GridView将触发的所有事件都将由Ajax捕获。您可以尝试使GridView按钮单击Ajax回调。

我在Ajax Update Panel或Ajax控件内部的控件之前遇到过这个问题;例如Accordion Panel,触发服务器端事件处理程序,但由于涉及Ajax,值被卡在客户端。

答案 1 :(得分:0)

确保您的控件位于同一个UpdatePanel中,或更新各种容器UpdatePanel。