標籤:style blog http color os io for 2014
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.Mvc;namespace WebApplication1.MyHtmlHelper{ public static class MyHtmlHelper { //頁面渲染結果: //<span>我擴充的Label,自動產生Span標籤</span> //把標籤名都顯示(直接將內容顯示) public static string MyHtmlLable1(this HtmlHelper html,string lableName) { return string.Format("<span>{0}</span>",lableName); } public static HtmlString MyHtml(this HtmlHelper html, string value) { return new HtmlString(value); } //頁面渲染結果: //span標籤 public static HtmlString MyHtmlLable2(this HtmlHelper html, string lableName) { return MyHtml(html,string.Format("<span>{0}</span>", lableName)); } //頁面渲染結果: //input標籤 public static HtmlString MyTextBox(this HtmlHelper html,string content) { return MyHtml(html,string.Format("<input type=‘type‘ value=‘{0}‘/>",content)); } }}
@using WebApplication1.MyHtmlHelper@{ ViewBag.Title = "Test";}<h2>Test</h2>@*結果:<span>我擴充的Label,自動產生Span標籤</span>*@ @Html.MyHtmlLable1("我擴充的Label,自動產生Span標籤") <br />@*結果:我擴充的Label,自動產生Span標籤*@ @Html.MyHtmlLable2("我擴充的Label,自動產生Span標籤") <br />@*結果:span標籤測試*@ @Html.MyHtml("span標籤測試") <br />@*textbox*@ @Html.MyTextBox("textbox") <br />
所有標籤定義方法:
public static string SelfDefineTagString(this HtmlHelper helper, string tagName, string id, string name, string className,string value, string style) { //建立標籤 TagBuilder tb = new TagBuilder(tagName); //定義標籤id tb.GenerateId(id); //定義標籤name tb.MergeAttribute("name", name); //定義標籤class tb.AddCssClass(className); //定義標籤樣式 tb.MergeAttribute("style", style); //定義標籤內容 tb.SetInnerText(value); return tb.ToString(); } public static HtmlString SelfDefineTag(this HtmlHelper helper, string tagName, string id, string name, string className,string value, string style) { return new HtmlString(SelfDefineTagString(helper, tagName, id, name, className, value, style)); }
html調用方法:
@Html.SelfDefineTag("p", "test", "test", "test", "p標籤", "color:red;background:#ccc;width:100px;text-align:center")