【问题标题】:basic html tags inside code behind后面代码中的基本 html 标签
【发布时间】:2015-02-01 21:41:14
【问题描述】:

是否可以在 Control.Text 中插入粗体标签?这是我的代码:

Label lab_Name = new Label();
Label lab_actualName = new Label();
lab_Name.Text = "Name: ";
lab_Name.Style.Add("font-weight", "bold");
lab_actualName.Text = + allRecords[i].name;

因为我希望它是这样的:

<b>Name: </b> Bosiyan

但我不想将它们分开,这是我一直在想的(如果可能的话):

Label lab_Name = new Label();
//lab_Name.Text = "<b>Name: </b>" + allRecords[i].name;

【问题讨论】:

    标签: c# html asp.net dynamic


    【解决方案1】:

    您可以为此目的使用ASP.NET Literal

    Literal lit_Name = new Literal();
    lit_Name.Text = "<b>Name: </b> Bosiyan";
    

    文本将按原样呈现,即Name: 将如下所示为粗体

    姓名:博斯彦

    你也可以像这样在aspx中定义Literal控件

    <asp:Literal ID="lit_Name" runat="server" />
    

    并在代码后面设置Text 属性而不初始化lit_Name

    lit_Name.Text = "<b>Name: </b> Bosiyan";
    

    【讨论】:

    • 直到现在我才知道有这样的东西存在。谢谢!
    • 只是好奇,如果我将 runat=server 放在标签中,我可以在后面的代码中调用它吗?
    • 我可以这样做吗? lit_Name.Text = "名称: Bosiyan";
    • 如果你这样做,它将呈现&lt;b runat=server id="Bold_Lit"&gt;Name: &lt;/b&gt; Bosiyan,但你将无法从后面的代码访问Bold_Lit,因为它是一个静态文本。你真的想这样做吗?
    • 不!我只是好奇!感谢您的帮助!
    【解决方案2】:

    您可以使用两个标签。所以基本上任何你想标记为粗体的东西都可以使用 controlstyle,因为所有控件都具有该属性

    Label a = new Label() {  Text= "test"};
    a.ControlStyle.Font.Bold = true;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-21
      • 2011-10-29
      • 2020-07-25
      • 2014-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-21
      相关资源
      最近更新 更多