![](/img/trans.png)
[英]How to create a Paragraph (<p>) using HtmlGenericControl in ASP.NET?
[英]ASP.NET: Bold parts of text using HtmlGenericControl
我是一個完整的ASP.NET新手,所以這可能很簡單。
我有一個標簽,使用下面的偽代碼在后面的代碼中動態設置了文本
label.Text = string.Format(SOME-DYNAMIC-MESSAGE(ID,1), name, day);
SOME-DYNAMIC-MESSAGE具有以下形式:{0}和{1}表示變量名稱和日期。
Hello {0}, today is {1}.
我需要將這些變量設為粗體 。 我試圖將它們包裝成跨度,以便可以使用此代碼從CSS訪問它們
HtmlGenericControl bold = new HtmlGenericControl("span");
bold.InnerText = name;
bold.Attributes.Add("class", "bold");
label.Text = string.Format(SOME-DYNAMIC-MESSAGE(ID,1), bold, day);
但它不起作用,沒有添加額外的包裝器。 它甚至停下來向我展示變量的內容。
有人知道如何解決這個問題嗎?
嘗試:
label.Text = string.Format(SOME-DYNAMIC-MESSAGE(ID,1), "<span style=\"font-weight:bold\">" + bold + "</span>", "<span style=\"font-weight:bold\">" + day + "</span>");
這是一個快速的示例應用程序(控制台應用程序)來演示一種方法。 我認為您正在嘗試格式化String.Format
的輸入字符串,並使令牌的font-weight
( {0}
, {1}
等) 加粗 。
使用此Func<string,string>
格式化輸入字符串。 然后將以下CSS添加到您的html頁面:
class Program
{
static void Main(string[] args)
{
var input = @"Hello {0}, today is {1}.";
Func<string, string> SomeDynamicMessage = s => {
var val = s;
val = val.Replace("{", "<span class='bold-token'>{");
val = val.Replace("}", "}</span>");
return val;
};
Console.WriteLine(SomeDynamicMessage(input));
// output: Hello <span class='bold-token'>{0}</span>, today is <span class='bold-token'>{1}</span>.
var final = Console.ReadLine();
}
}
CSS片段:
.bold-token { font-weight: bold; }
最終輸出:
Hello <span class='bold-token'>{0}</span>, today is <span class='bold-token'>{1}</span>
編輯-更多信息
這是您應該如何使用它:
var input = @"Hello {0}, today is {1}.";
label.Text = string.Format(SomeDynamicMessage(input), "test", "Thursday");
輸出將是:
Hello <span class='bold-token'>test</span>, today is <span class='bold-token'>Thursday</span>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.