0

我在 GridView 内部的 UpdatePanel 中有一个 TextBox。UpdatePanel 的目的是在调用 TextChanged 事件时更新 TextBox(就像我的上一个问题一样)。

这是我在阅读该主题后开始工作的。但我现在遇到的问题是我必须在 PostBack 向 GridView 添加新数据,并且以下新行不会触发 TextChanged 事件。只有 GridView 中的第一行可以。

因此,我想在 RowCreated 事件中为 TextChanged 事件设置 EventHandler,以便在创建新行之前设置处理程序,但我似乎仍然在这里遗漏了一些东西。任何线索都会很高兴地采取:)

PS:如果您想查看我的一些代码,我现在必须参考上一个问题中的代码,因为我目前在家。我明天一上班就可以发。

4

1 回答 1

0

笨蛋我又来了!在代码隐藏中,AsyncPostback 从未到达 gridview 在回发时构建新行的部分。因此,TextChanged 事件仅发生在第一行,因为它是唯一在没有回发发生时也构建的行。

这里棘手的部分是在 AsyncPostback 中找出最后一次 Page_Load 是否通过 PostBack 调用。我想我通过一种非常肮脏的方式解决了它:在 PostBack 上,我在 Page_Load 中向 hiddenField 写入了某个值。之后我检查了该值是否仍在 hiddenField 中。如果是这样,那么我知道在 AsyncPostback 中我必须走 PostBack 的路线,如果不是,则不是。

如果有人想出更好的方法来实现这一点,欢迎您赐教:)

于 2013-04-16T09:00:18.643 回答