向ASP.NET服務器控件中嵌入CSS資源

Step1:於【項目解決方案】中右鍵新建【ASP.NET服務器控件】項目css

Step2:於項目中添加【Resources】文件夾,於該文件夾下添加【CSS文件】程序員

Step3:單擊該CSS文件,並將【屬性】欄中的【生成操做】改成【嵌入的資源】服務器

Step4:新建【ASP.NET自定義控件】,於namespace聲明前添加以下特性:ide

[assembly:WebResource("MyControl.Resouces.MyCSSFile.css","text/css")]this

namespace MyControlspa

{code

P.S.[assembly:WebResource("namespaceName.Directories.FileName.Extention","文件的MIME類型")]blog

Page.ClientScript.GetWebResourceUrl()方法返回該CSS文件路徑ip

Step5:向宿主頁面註冊此CSS文件:資源

     protected override void OnPreRender(EventArgs e)
        {
            if (Page.Header.FindControl("ServerTabsCSS") == null)//防止同一頁面多個該自定義控件向宿主頁面添加相同的<link>標記
            {
                HtmlLink css = new HtmlLink();
                css.ID = "ServerTabsCSS";
                css.Href = Page.ClientScript.GetWebResourceUrl(this.GetType(), "MyControl.Resouces.MyCSSFile.css");
                css.Attributes.Add("rel", "stylesheet");
                css.Attributes.Add("type", "text/css");
 
                Page.Header.Controls.Add(css);
            }//<link type="text/css" rel="stylesheet" href="......css"/>
         
 
            base.OnPreRender(e);
        }

 技術交流請加羣517867216 入羣驗證請帶上程序員的特色。

相關文章
相關標籤/搜索