ASP.NET Repeater ItemDataBound 在 PreRender 事件之后发生?

标签 asp.net data-binding events repeater page-lifecycle

我在 ASP.NET 2.0 Web 表单上有一个转发器控件。

据我了解,页面的所有数据绑定(bind)控件都会在 Page_LoadPage_PreRender 事件之间的某个位置触发其绑定(bind)事件。

但是,我的转发器的 ItemDataBound 事件似乎是在 PreRender 事件之后发生的。

这是怎么回事?在所有 ItemDataBound 事件触发后,我有什么方法可以访问页面控件吗?

更新:

  • 转发器使用 ObjectDataSource 以及转发器控件中的 DataSourceID 声明集。

  • 数据源 ID 或对象在页面生命周期中根本不会被修改。

最佳答案

声明性数据绑定(bind)(通过 DataSourceID 属性指定的数据源)晚于 PreRender 事件发生。您所观察到的行为是设计使然的。如果这不是您所需要的,您应该显式地对您的控件进行数据绑定(bind) - 只需调用其 DataBind 方法。

关于ASP.NET Repeater ItemDataBound 在 PreRender 事件之后发生?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/219467/

相关文章:

c# - 如何在 ComboBox TemplateSelector 中强制更新 WPF 多重绑定(bind)?

asp.net - SameSite None 未在 Azure Web App 中设置 cookie 属性

c# - 使用 InteractiveDataDisplay.WPF 导出图形

wpf - 在 ConverterParameter 中使用字典中的字符串

python - QUIT pygame 事件未定义

c# - 这个用于连接和声明事件的 C# 代码的 VB.NET 等价物是什么?

apache-flex - FLEX 中的重新调度事件

ASP.NET 成员(member)盐?

.net - 数据服务抛出神秘异常 : "Media type requires a ' /' character"

c# - 如何查看哪些文档已打开?