|
Śledzenie na poziomie strony, odsyłanie strony (PostBack)
Ustawiono atrybut strony
Trace="true", co powoduje, że u dołu strony
powinna się
pojawić tabela śledzenia, zawierająca
- dziennik śledzenia,
- drzewo kontrolek,
- stan aplikacji i sesji,
- parametry żądania.
Umieszczone na stronie kontrolki tekstowe
TextBox1:
i TextBox2:
oraz
służą do generowania zdarzeń, których ślad można znaleźć w dzienniku śledzenia.
Tylko kliknięcie przycisku powoduje odesłanie strony na serwer - PostBack.
AutoPostBack
dla kontrolki
TextBox1
można ustawić zaznaczając:
.
Obsługa zdarzeń polega na umieszczeniu komunikatu o zdarzeniu w dzienniku
śledzenia za pomocą metody
Trace.Warn. Dla kontrolki
TextBox1
obsługiwane są zdarzenia
ontextchanged,
oninit,
onload,
onprerender,
onunload,
dla TextBox2
obsługiwane jest zdarzenie
ontextchanged,
ponadto obsługiwane jest kliknięcie przycisku i
PageLoad.
Po kolejności wpisów do dziennika śledzenia można się zorientować w jakiej
kolejności zachodzą zdarzenia.
Jeśli po odesłaniu strony serwer wykryje więcej niż jedno zdarzenie danego typu,
zdarzenia są obsługiwane według kolejności kontrolek w drzewie
Listing kodu obsługi zdarzeń na stronie.
protected void Page_Load(object sender, EventArgs e)
{
if (Page.IsPostBack) Trace.Warn("Zdarzenie", "Powtórne wywołanie strony
(PostBack)");
else Trace.Warn("Zdarzenie", "Pierwsze wywołanie strony");
}
protected void Button1_Click(object sender, EventArgs e)
{
Trace.Warn("Zdarzenie", "Kliknięcie przycisku");
}
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
Trace.Warn("Zdarzenie", "Zmiana tekstu 1");
}
protected void TextBox2_TextChanged(object sender, EventArgs e)
{
Trace.Warn("Zdarzenie", "Zmiana tekstu 2");
}
protected void TextBox1_Init(object sender, EventArgs e)
{
Trace.Warn("Zdarzenie", "Tekst 1 Init");
}
protected void TextBox1_Load(object sender, EventArgs e)
{
Trace.Warn("Zdarzenie", "Tekst 1 Load");
}
protected void TextBox1_PreRender(object sender, EventArgs e)
{
Trace.Warn("Zdarzenie", "Tekst 1 PreRender");
}
protected void TextBox1_Unload(object sender, EventArgs e)
{
Trace.Warn("Zdarzenie", "Tekst 1 Unload");
}
|