C#学习教程:将字符串转换为WebControls – asp.net分享


将字符串转换为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.ssfiction.com)

本文来自网络收集,不代表猴子技术宅立场,如涉及侵权请点击右边联系管理员删除。

如若转载,请注明出处:https://www.ssfiction.com/ckf/959897.html

发表评论

邮箱地址不会被公开。 必填项已用*标注