向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 入群验证请带上程序员的特色。

相关文章
相关标签/搜索