0
我有这样的HTML帮助选择自定义控制CSS文件中的ASP MVC
public static MvcHtmlString EditButton(this HtmlHelper html, string action,
string controller, bool state, Themes theme)
{
var url = new UrlHelper(html.ViewContext.RequestContext);
var linkBuilder = new TagBuilder("link");
string path;
switch (theme)
{
case Themes.brown:
path = "../../Content/themes/" + Themes.brown .ToString()+ "/style.css";
break;
case Themes.darkblue:
path = "../../Content/themes/" + Themes.darkblue.ToString() + "/style.css";
break;
case Themes.darkorange:
path = "../../Content/themes/" + Themes.darkorange.ToString() + "/style.css";
break;
case Themes.defaultTheme:
path = "../../Content/themes/" + Themes.defaultTheme.ToString() + "/style.css";
break;
case Themes.green:
path = "../../Content/themes/" + Themes.green.ToString() + "/style.css";
break;
case Themes.greyblue:
path = "../../Content/themes/" + Themes.greyblue.ToString() + "/style.css";
break;
case Themes.lightblue:
path = "../../Content/themes/" + Themes.lightblue.ToString() + "/style.css";
break;
case Themes.lightorange:
path = "../../Content/themes/" + Themes.lightorange.ToString() + "/style.css";
break;
case Themes.pink:
path = "../../Content/themes/" + Themes.pink.ToString() + "/style.css";
break;
case Themes.red:
path = "../../Content/themes/" + Themes.red.ToString() + "/style.css";
break;
case Themes.yellow:
path = "../../Content/themes/" + Themes.yellow.ToString() + "/style.css";
break;
default:
path = "../../Content/themes/" + Themes.defaultTheme.ToString() + "/style.css";
break;
}
linkBuilder.MergeAttribute("href", "@Url.Content(" + path + ")");
linkBuilder.MergeAttribute("rel", "stylesheet");
linkBuilder.MergeAttribute("type", "text/css");
//génrer le tag <a>
var builder = new TagBuilder("a");
//ajouter les différents attributs du tag
builder.MergeAttribute("href", url.Action(action, controller));
builder.MergeAttribute("alt", "edit");
builder.MergeAttribute("title", "Edit");
if (state)
{
builder.AddCssClass("edit_active");
}
else
{
builder.AddCssClass("edit_inactive");
}
string anchorHtml = builder.ToString(TagRenderMode.Normal);
return MvcHtmlString.Create(anchorHtml);
}
我想选择为每个主题的CSS文件。这是做到这一点的正确方法吗?
谢谢你,对不起,我刚开始用.NET – kbaccouche 2012-03-07 08:06:17
@the_ruby_racer,不用担心乱码,我们都必须从某个地方开始,然后逐步提高。 – 2012-03-07 08:07:33
没有办法在同一个页面中创建两个控件,每个控件都有自己的主题? – kbaccouche 2012-03-07 08:26:15