|
或許大家還對(duì)為何要重寫(xiě)Render方法存有疑惑,希望大家看看我舉的例子,能夠明白R(shí)ender方法和其他兩個(gè)方法的作用,然后真正明白為何一般情況下只須重寫(xiě)Render方法。我們知道我們每次編寫(xiě)控件時(shí),都需要重寫(xiě)Render方法,我們發(fā)現(xiàn)在Control類中很多方法可以重寫(xiě),但我們沒(méi)有去重寫(xiě)他們,我們需要遵循一個(gè)原則,在需要重載的時(shí)候再去重寫(xiě)他們
我們還是先來(lái)看看與Render方法相關(guān)的兩個(gè)方法
//RenderControl方法的基本實(shí)現(xiàn)
public void RenderControl(HtmlTextWriter writer)
{
if(Visible)
{
Render(writer);
}
}
//Render方法基本實(shí)現(xiàn)
protected virtual void Render(HtmlTextWriter writer)
{
RenderChildren(writer);
}
//RenderChildren方式基本實(shí)現(xiàn)
protected virtual void RenderChildren(HtmlTextWriter writer)
{
foreach (Control c in Controls)
{
c.RenderControl(writer);
}
}
NET技術(shù):asp.net控件開(kāi)發(fā)基礎(chǔ)(2),轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。