获取asp:Repeater中某些Page控件的值

时间:2011-01-20 14:51:37

标签: asp.net drop-down-menu repeater itemdatabound

在我的asp.net页面上,我有几个DropDownLists。 我也有一个中继器。

在ItemDataBound事件中,我想获取这些DropDownLists的值,以更改Repeater中的数据。这些DropDownLists的SelectedValue为空。 但是在ItemDataBound之后,会执行Page_Load。在那里,我可以获得这些DropDownLists的价值。

是否有解决方案在ItemDataBound执行时获取值。

谢谢!

菲利普

2 个答案:

答案 0 :(得分:0)

您需要在Page.Load事件中对这些下拉列表进行数据绑定。

<击>

有很多网页控件在加载生命周期中获取状态或其他细节(很久以前我遇到过这类问题)。

注意:当我说“State”时,我不是在谈论ViewState。

为什么不在load事件之后执行数据绑定?

答案 1 :(得分:0)

您是否可以在页面PreInit事件中获取下拉列表中的选定值?如果是这样,请将它们存储在视图状态,并在转发器的项数据绑定事件期间从视图状态中检索它们。

如果这不起作用,请尝试将选定的索引更改事件添加到每个下拉列表中。当下拉列表更改时,设置一个视图状态变量,您可以在转发器的项目数据绑定事件期间检索该变量。如果您有在页面加载期间设置下拉列表的值,例如从数据库读取时,请使用这些值直接设置相应的视图状态变量。