您的位置:首页 > 编程语言 > ASP

SetRenderMethodDelegate 方法

2006-12-06 18:18 218 查看
今天看代码发现一个有趣的方法。
System.Web.UI.Control 类的 SetRenderMethodDelegate()

这个方法允许控件接受一个委托来定制自身的 Render 行为,这样,在子控件里就可以重新定义父控件的 Render 方法,很灵活。IronPython for ASP.NET 的实现就利用到这个特性了。
例子:
public class SnippetControl: BaseCodeControl {
    protected override void OnInit(EventArgs e) {
        base.OnInit(e);
        // 修改其父控件的 Render 方法
        this.Parent.SetRenderMethodDelegate(new System.Web.UI.RenderMethod(SnippetControl.RenderMethod));
    }

    internal static void RenderMethod(HtmlTextWriter writer, Control container){
        // ....
    }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  asp.net