0

我的 default.aspx 页面中有一个文本框,我想在事件处理程序中更新它的文本属性,但在执行代码后更改不会发生。

void _gsc_Task_Completed(object sender, TaskEventArgs e)
{

  TextBox1.Text = "New Value";


}

但是,如果我在一个简单按钮的单击事件上执行此操作,则 textbox.Text 值
会发生变化。

像 _gsc_Task_Completed 这样的自定义事件处理程序和简单的按钮单击事件有什么区别?

4

2 回答 2

0

文本框是一个server side control. 当您更改文本时,此工作(更改文本)是客户端,因此事件not firing。但是当我点击一个按钮时,页面将返回服务器并返回,所以事件is firing.

于 2013-04-20T17:51:41.897 回答
0

您需要考虑页面生命周期:http: //msdn.microsoft.com/en-us/library/ms178472 (v=vs.100).aspx

要么您的事件处理程序被提前调用(并被从客户端带回的任何内容所破坏),要么在控件已经呈现后调用它。

如果我是你,我会在那里放置一个断点以及页面 onInit、onLoad 等的正常处理程序。查看调用该处理程序的顺序(如果有的话)以及调用堆栈上它下面的内容。

于 2013-04-20T17:57:15.860 回答