我正在动态地向页面添加标签,有一些标签必须标记为必需。以下是代码
Panel1.Controls.Add(new LiteralControl("<td>"));
if (required)
{
Mynewlabel.Text = lblname + " *";
Mynewlabel.BackColor = System.Drawing.Color.Red;
}
ControlsPanel.Controls.Add(Mynewlabel);
ControlsPanel.Controls.Add(new LiteralControl("</td>"));
设置Mynewlabel.BackColor使完整的标签返回颜色为红色,而我只是想让*符号为红色...我不确定它是否可以使用。
请提供您的意见。
答案 0 :(得分:2)
<强> CSS:强>
.required
{
color:red;
}
<强>代码:强>
Panel1.Controls.Add(new LiteralControl("<td>"));
if (required)
{
Mynewlabel.Text = lblname;
Label lblRequired = new Label();
lblRequired.Text = "*";
lblRequired.CssClass= "required";
}
ControlsPanel.Controls.Add(Mynewlabel);
ControlsPanel.Controls.Add(lblRequired);
ControlsPanel.Controls.Add(new LiteralControl("</td>"));
答案 1 :(得分:0)
将星号(*)放在自己的span标签中,并通过CSS类为其应用颜色。
更优雅的方法是从Label继承自己的自定义标签,并将CSS规则作为属性应用于此。通过这种方式,您可以在页面上拥有这些集合,而不会出现代码隐藏中的混乱:)
答案 2 :(得分:0)
我相信你可以这样做:
Mynewlabel.Text = lblname + @" <span style=""background-color:red"">*</span>";
这似乎有点夸张但如果你想要在一个标签的背景下描述的造型,这可能是你唯一的选择。
答案 3 :(得分:0)
这是可行的,但它很难看:
Mynewlabel.Text = lblname + @"<span style=""color:red;""> *</span>";