首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

|M| 哪位高手帮小弟我注释一下幕白兄写的一段代码 多谢

2012-01-22 
|M| 谁帮我注释一下幕白兄写的一段代码谢谢WebControlc(WebControl)this.Controls[1]//得到this中的第二

|M| 谁帮我注释一下幕白兄写的一段代码 谢谢
WebControl   c   =   (WebControl)this.Controls[1];
//得到this中的第二个控件
System.IO.StringWriter   sw   =   new   System.IO.StringWriter();
//??
HtmlTextWriter   wt   =   new   HtmlTextWriter(sw);
//??
c.RenderControl(wt);
//??
writer.Write(sw.ToString().Replace( "display:none; ",   " "));
//??
wt.Close();
sw.Close();

[解决办法]
1.实现一个TextWriter,使其以一种特定的编码向流中写入字符
2.将标记字符和文本写入到ASP.NET 服务器控件输出流
3.将服务器控件的内容输出到所提供的HtmlTextWriter 对象中
4.取或设置接收跟踪或调试输出的文本编写器
[解决办法]


你主要查一下c.RenderControl(wt);中 RenderControl 的用法你应该就知道了他这么做是什么用意
[解决办法]
这个访问是重写这个控件的RenderChildContrl事件.这个控件有两个子控件.因为第一个控件生成的html,里面的style有display:none所以我先构建一个 HtmlTextWriter 得到这个控件输出的html代码,然后替换掉.写到父控件的HtmlTextWriter 中去,第二个直接写.

热点排行