【发布时间】:2015-03-31 13:18:57
【问题描述】:
我有一个网站,我在其中加载了几个 ASP 控件,然后我想调用一个名为 foo 的 codebehind 函数。
在遇到this topic之后,了解了页面生命周期的事件。我几乎尝试了 Visual Studio 可以提供的所有事件,并且函数 foo 总是在渲染之前被调用。
基本上,函数foo 的作用是显示(使用Response.Write() 方法)来自DataSet 类型的数据(在Page_Load 函数中加载的数据)。
更具体地说,有一个asp:DropDownList 说明用户希望如何对数据进行排序。我希望数据显示在asp:DropDownList 之后而不是之前(列表有默认值)。
有没有办法做到这一点?在表单已经呈现后或在最后一个控件(在本例中为列表)呈现后或任何可能的方式后触发该函数。
注意:请记住,数据不是恒定的(显然不是它的大小,也不是它的内容),它每次都从数据库中下载并使用Response.Write() 写入(除非有另一种写入数据的方式 - a以某种方式确保它写在列表之后...?)。
顺便说一句 - 是的,我确实看到了 this post(没有任何帮助)。
【问题讨论】:
-
您不应该使用
Response.Write将 HTML 注入您的 Web 表单页面。相反,您应该在页面上的列表之后添加一个控件,例如Literal,并将 HTML 添加到该控件。 -
@mason 非常感谢您的提示!我实际上一直在寻找其他方法来做到这一点