2013-04-20 61 views
1

我在我的default.aspx頁面中有一個文本框,我想更新它的事件處理程序中的文本屬性,但執行代碼後不會發生更改。更新服務器端代碼中的Textbox.text asp.net

void _gsc_Task_Completed(object sender, TaskEventArgs e) 
{ 

    TextBox1.Text = "New Value"; 


} 

如何過,如果我這樣做一個簡單的按鈕textbox.Text價值
變化的單擊事件。

自定義事件處理程序(如_gsc_Task_Completed)與簡單按鈕單擊事件之間的區別是什麼?

+0

你在哪裏調用'_gsc_Task_Completed'? – 2013-04-20 17:49:04

+0

當任務完成時,此事件在類庫中引發,我想在_gsc_Task_Completed事件處理程序 – 2013-04-20 17:53:17

+0

中更改textbox.text,您是否調試過這個? _gsc_Task_Completed是否被調用? – 2013-04-20 18:02:31

回答

0

文本框是server side control。當你改變文本這個工作(改變文本)是客戶端所以事件not firing。但是當我點擊一個按鈕的頁面是要服務器和背部因此事件is firing.

+0

_gsc_Task_Completed正在觸發,但我想用新的文本框值刷新頁面 – 2013-04-20 17:58:13

0

您需要考慮頁面的生命週期:http://msdn.microsoft.com/en-us/library/ms178472(v=vs.100).aspx

無論你的事件處理程序被稱爲早期(和慘敗什麼從客戶端被帶回),或者在控件已經被渲染後被調用。

如果我是你,我會在那裏放置一個斷點以及onInit,onLoad等頁面的普通處理程序。查看調用堆棧中調用該處理程序的順序(如果有的話)以及它下面的內容。