【问题标题】:Difference between TextChanged property and AutoPostBack property with respect to ASP.NET TextBox control关于 ASP.NET TextBox 控件的 TextChanged 属性和 AutoPostBack 属性之间的区别
【发布时间】:2012-07-05 22:58:55
【问题描述】:

我正在阅读教科书“Sams ASP.NET 4 unleashed”,我对 ASP.NET TextBox 控件的 TextChanged 属性和 AutoPostBack 属性之间的区别感到困惑。

本书将这两个属性解释为:

AutoPostBack - 使您能够将包含 TextBox 的表单发回 当 TextBox 的内容为 改变了。

那么,

TextChanged—当文本框的内容发生变化时在服务器上引发 改变了。

然后继续解释:

当 AutoPostBack 属性的值为 True 时,表单包含 文本框自动回传到服务器时 TextBox 的内容发生变化。如果修改内容 TextBox 控件中的文本框和选项卡,窗体自动 回传到服务器,并显示TextBox的内容。

让我感到困惑的是这一行:

即使您不使用 AutoPostBack 属性。

那么,Autopostback 属性和 textchanged 属性之间的区别是什么导致页面再次发布到服务器?还是这两种方法的工作方式彼此不同?我很困惑..请帮助我更好地理解它。

【问题讨论】:

    标签: asp.net


    【解决方案1】:

    即使不使用 AutoPostBack 属性,您也可以处理 TextChanged 事件。

    是的,这是真的。您可以在下次往返服务器时处理 TextChanged 事件,即使它没有立即回发。

    • 因此,当您处理事件并将AutoPostBack 设置为true 时,将立即进行回发并引发TextChanged 事件。
    • AutoPostBack 设置为 false 时,您可以在下一次回发时处理该事件(例如单击按钮)

    的 Autopostback 属性和 textchanged 属性有什么区别,都会导致页面再次发布到服务器

    所以粗体字是完全错误的。 不同之处在于一个控制回发行为,另一个注册一个事件处理程序。

    【讨论】:

      【解决方案2】:

      当回发完成并定向到自己的页面时,将引发 TextChanged。加载循环后引发此事件。这意味着 TextChanged 在两个回发之间引发。

      AutoPostBack 属性正在激活回发,当文本框的内容发生更改并从该文本框中聚焦时。回发发生后,页面被定向到自己。然后在引发加载循环 TextChanged 事件之后再次发生。

      TextChanged 也是一个“事件”而不是属性。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-10-25
        • 1970-01-01
        • 2012-10-03
        • 1970-01-01
        • 1970-01-01
        • 2011-05-31
        • 1970-01-01
        • 2018-11-17
        相关资源
        最近更新 更多