使用此XML文件 -
<Instructions>
<Admin>
<Instruction>
Steps must be completed in order.</br>
1. Set dates</br>
2. Import.</br>
3. Generate.</br>
</Instruction>
<Style>
<padding-left value="50px"/>
<padding-right value="0px"/>
</Style>
</Admin>
</Instructions>
这段代码 -
public void LoadInstructions(String instructionKey) {
XmlNode instLabel = mPropsDoc.SelectSingleNode("ApplicationProperties/Instructions/Admin/Instruction");
XmlNode instStyle = mPropsDoc.SelectSingleNode("ApplicationProperties/Instructions/Admin/Style");
Label ctlInst = new Label();
ctlInst.Text = instLabel.InnerText;
foreach (XmlElement styles in instStyle.ChildNodes) {
ctlInst.Style.Add(styles.Name, styles.Attributes["value"].Value);
}
PageContent.Controls.AddAt(0, ctlInst);
}
其中PageContent是我页面上的ContentPlaceHolder。
样式仅应用于第一个元素,控件呈现为跨度控件。
为什么它不是作为标签呈现的?为什么样式只应用于第一行?
答案 0 :(得分:1)
如果你想要格式化格式化,你必须将它变成CDATA元素
<Instruction>
<![CDATA[Steps must be completed in order</br>
1. Set dates</br>
2. Import</br>
3. Generate</br>]]>
</Instruction>
说出来,我会对这个标记进行标记,然后在需要时构建演示文稿,它将继续成为PIA。
答案 1 :(得分:0)
据我所知,System.Web.UI.Label元素(我认为你正在使用)始终呈现为&lt; span&gt;。要创建&lt;标签&gt; - 你需要System.Web.UI.HtmlGenericControl(“label”)。