【问题标题】:C#.NET, Postback occurs before execution of event handler?C#.NET,回发发生在事件处理程序执行之前?
【发布时间】:2012-09-13 16:48:03
【问题描述】:

在我的网页中,我有一个在 Page_Load 方法中创建的 gridview,它从数据库表中检索一些值。我还有一个按钮,单击该按钮会导致事件处理程序从表中添加/删除行。目前,当我按下按钮时,事件处理程序会运行,但在发生另一个回发之前,gridview 不会更新。

对我来说,这似乎意味着回发发生在事件处理程序执行之前。它是否正确?如果是这样,我怎样才能使按下按钮更新表格,然后重新加载gridview?我想我可以在事件处理程序中重新创建 gridview 数据源,但这似乎是解决问题的一种非常低效的方法。

【问题讨论】:

    标签: c# asp.net sql


    【解决方案1】:

    没错。 Control EventsPage Load 事件之后处理。

    查看 this documentation 关于 MSDN 中的 Page Lifecycle

    有助于您理解这一点的方法是在您的代码中的 Page_Load 方法和您的 Button Click 事件处理程序上设置断点,然后单击按钮并查看每个断点何时被命中。

    对于您的Gridview,您必须再次调用绑定代码才能在回发后显示您的更改。最好的方法是使用绑定代码创建一个方法,并从事件处理程序中调用它。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-01
    相关资源
    最近更新 更多