将字符串转换为WebControls – asp.net
如果您看到以下代码
Table tblTest = (Table)tblControl; StringBuilder text = new StringBuilder(); StringWriter writer = new StringWriter(text); HtmlTextWriter htmlWriter = new HtmlTextWriter(writer); tblTest.RenderControl(htmlWriter); htmlCode = text.ToString();
这里我将表对象转换为字符串。
我将输出为"
item |
"
现在我想回滚它。 我有一个字符串,我需要将其转换为WebControls.Table对象。 请有人建议某种方式。
创建一个HtmlControl的名称映射到控件。 然后你可以获取发送给你的xml字符串并使用XDocument.Parse
加载它。 从那里你可以递归地构建控制结构。
Dictionary controlConstructor = new Dictionary { {"table", new HtmlTable()}, {"tr", new HtmlTableRow()}, {"td", new HtmlTableCell()} }; string xml = "item
"; var htmlDoc = XElement.Parse(xml); Func constructHtmlStructure = null; constructHtmlStructure = e => { var control = controlConstructor[e.Name.ToString()]; if (e.HasElements) control.Controls.Add(constructHtmlStructure(e.Elements().Single())); else control.InnerText = e.Value; return control; }; var structure = constructHtmlStructure(htmlDoc);
是一个非常简单的开始。 获得所有控件都需要更复杂的东西。 请注意,它们具有TagName属性,您可以使用该属性捕获构建字典中的所有控件。
上述就是C#学习教程:将字符串转换为WebControls – asp.net分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/959897.html