我有这个控制
<asp:Label ID="lblName" runat="server" Text="My Name" CssClass="required regular" />
我想从后面的代码中删除required
类,我该怎么做?
答案 0 :(得分:60)
您可以用空字符串替换“required”:
lblName.CssClass = lblName.CssClass.Replace("required", "");
答案 1 :(得分:14)
只是稍微更通用的方法 - 应该排除css类可能出现在CssClass属性中其他位置的潜在错误。
public void RemoveCssClass(WebControl controlInstance, String css)
{
controlInstance.CssClass = String.Join(" ", controlInstance.CssClass.Split(' ').Where(x => x != css).ToArray());
}
答案 2 :(得分:2)
这对我有用
lblName.CssClass = "regular";
答案 3 :(得分:1)
使用此:
object.CssClass= object.CssClass.Replace("MyClass", "");
答案 4 :(得分:0)
lblName.Attributes.Add("class","urclassname"); //add class to lblName
答案 5 :(得分:0)
注意:无论是在codeBehind中添加还是替换css类,请记住在两个类中都包含等效属性,即两者都有background-color,font-family等。因为否则你可能会被愚弄认为该类从未切换过,即使它已经切换但没有更新等效属性。
答案 6 :(得分:0)
要从背后的代码中删除css类
lblName.Attributes["class"]=" ";
答案 7 :(得分:0)
这是@KevD的代码示例所启发的代码。
public static class WebControlExtension
{
public static void RemoveCssClass(this WebControl controlInstance, String css)
{
controlInstance.CssClass = String.Join(" ", controlInstance.CssClass.Split(' ').Where(x => x != css).ToArray());
}
public static void AddCssClass(this WebControl controlInstance, String css)
{
controlInstance.CssClass = String.Join($" {css} ", controlInstance.CssClass.Split(' ').ToArray());
}
}