昨天发了一个 0 分贴:http://topic.csdn.net/u/20080801/08/3f222f6a-4ecd-4c23-ad34-28b802352c43.html
好多人就说没给分啊,说我小气。要BS我,抵制我。其实我不怕无能的人BS我,抵制我。我到怕高手不帮助我。
其实我一共发了 4 个0分贴来问这个问题。http://topic.csdn.net/u/20080801/08/9dca6c24-b827-49d0-acdc-2ca5244a2470.html
http://topic.csdn.net/u/20080729/17/a6c9eb28-daa7-49eb-9fb8-edc46a6ef644.html
http://topic.csdn.net/u/20080729/16/dec95bc6-73e5-498b-86ef-c919cd376554.html
其实我认为分要给用心帮助我的人。 我以前也问了10来个问题,都是0分,只不过后来自己解决了。
这次没解决,我现在还是问这个问题。
自己写了一个控件 LiteralRenderer,
假设如下标记:
<asp:LiteralRenderer runat="server">..1239999999456. <input runat="server" at="s">aahhhhhhhaaaa </input>abcdef </asp:LiteralRenderer>
怎么把 asp:LiteralRenderer 开始和结束标记之间的内容全部当成 asp:LiteralRenderer 的一个 string 属性?
可能这次也没人回答,但我还是会结贴给分的,所以先说明给分规则:
1,如果有人帮助我解决了问题,600分(另开贴点名给分)全给他。
2,如果多个人帮助我解决了问题,解决办法不一样,600分(另开贴点名给分)酌情分配。
3,如果有人提示解决问题的方法,而我根据他的提示解决了问题,600分(另开贴点名给分)全给他。
4,如果多个人提示解决问题的方法,而我根据他们的提示解决了问题,600分(另开贴点名给分)酌情分配。
5,意思差不多的内容以第一个为主,其余的视为抄袭,不给分。
6,如果没人帮助我解决此问题,此贴的所有分给最后一名用心考虑过问题并给出解决办法者。
7,如果全部是灌水的,给最后一名灌水的(广告除外)。
8,如果全部不符合,我自己减小号接分(应该有人来顶吧?)。
9,最后以实际结贴给分为准。
------解决方案--------------------
public string Filter(string s)
{
s = s.Replace("&","&");
s = s.Replace(" "," ");
s = s.Replace("\"",""");
s = s.Replace("<","<");
s = s.Replace(">",">");
return s;
}
protected override void Render(HtmlTextWriter output)
{
output.Write(Filter(Text));
}
------解决方案--------------------
把..1239999999456. <input runat="server" at="s">aahhhhhhhaaaa </input>abcdef 这些内容先加密(或者其它的方式也行),使其转换为独立的字符串,在读取时再解密还原。
------解决方案--------------------
------解决方案--------------------
[DefaultProperty("Text"),
ToolboxData("<{0}:LiteralRenderer runat=server></{0}:LiteralRenderer>"), ParseChildren(false, "Text")]
public class LiteralRenderer : System.Web.UI.WebControls.WebControl
{
private string text;
[Bindable(true),
Category("Appearance"),
DefaultValue(""), PersistenceMode(PersistenceMode.InnerDefaultProperty)]
public string Text
{
get
{
return text;
}
set
{
text = value;
}
}
protected override void Render(HtmlTextWriter output)
{
output.Write(Text);
}
private string Filter(string s)
{
if (s == null) return string.Empty;
s = s.Replace("&","&");
s = s.Replace(" "," ");
s = s.Replace("<","<");
s = s.Replace(">",">");
s = s.Replace("\"",""");
return s;
}
protected override void AddParsedSubObject(object obj)
{
text = text + Filter(RenderControlAsString((Control)obj));//
}
public string RenderControlAsString(Control ctl)
{