WebResource-asp.net自定义控件引用外部资源方法
rom:http://www.lmwlove.com/ac/ID879
一,首先当然是创建这两个文件了。我们在自定义控件的项目内创建两个文件,分别为JScript.js与Stylessheet.css文件。要使它们成为嵌入的资源,最重要的是在文件目录上点击右键,选择属性,在生成操作的选项选择"嵌入的资源",如下如图所示:
分别设置好JScript.js与Stylessheet.css文件的该属性,这样,文件的处理就完成了。
二,对嵌入资源的引用。
在AssemblyInfo.cs文件中对资源的引用。
除了设置文件的属性外,我们还需要设置对资源的引用,具体方法是:打开项目的AssemblyInfo.cs文件,在文件的最后面添加如下两行代码:
[assembly: WebResource("ServerControl.SelectCtlReSource.JScript.js", "text/javascript")]
注意它的两个参数,第一个参数它是一个字符串,总体意思就是文件的路径,格式为"引用类的命名空间"+"资源所在文件夹"+"文件名",如"ServerControl.SelectCtlReSource.Stylesheet.css",ServerControl为命名空间,SelectCtlReSource为css所在的文件夹,Stylesheet.css为文件名。第二个参数是指明文件的类型,包括"img/gif","text/css","text/javascript"等常用文件格式。
注意:添加引用时需要为AssemblyInfo.cs添加命名空间using System.Web.UI的引用。
那么要如何在自定义类中使用这两个外部文件呢?
三,使用外部css资源
我们可以利用Page.ClientScript.GetWebResourceUrl方法来获取到外部资源的地址,代码如下:
"ServerContrAssemblyInfo.cs.SelectCtlReSource.Stylesheet.css");
HtmlLink link = new HtmlLink();
link.Href = cssUrl;
link.Attributes.Add("rel", "stylesheet");
link.Attributes.Add("type", "text/css");
Page.Header.Controls.Add(link);
解释一下代码的意思:
1,注意Page.ClientScript.GetWebResourceUrl的三个参数,第一个就不讲了,为资源的类型。第二个比较重要,它的格式与上面引用格式一样。
2,获取到资源的url后,后面的代码就是将该css注册到页面的head中,这个就不讲解了。
四,使用外部javascript资源
引用javascript文件的方法与引用css的文件稍有些不一样。使用css文件为获取到外部css的路径后再通过HtmlLink类将css添加页面的head部分中,而javascript则可以直接通过RegisterClientScriptResource来注册,示例代码如下:
好了,这样就完成了在自定义控件中对外部资源的引用。平时我们看到页面中生成的WebResource.axd后面添加一堆的字符串,总觉的webresource会是一个很复杂的东西,其实,弄懂了它的规则后,这些东西就很容易理解并记住了,大家做做练习吧。
我们在上例中注册的两个文件,最终会在html文件中生成类似如下代码:
<script src="/WebResource.axd?d=8E4J6LzCJ4MPILLeEtw_QNoqvym1oFCPjfVEzI5E8b5ofI6AJjeHDdpnxnSLV-FCvsooBv9RwPT_SA1NvURXaD42LnY1&t=634751762881093750" type="text/javascript"></script>
WebResource-asp.net自定义控件引用外部资源方法的更多相关文章
- ASP.NET自定义控件加载资源WebResource问题
最近项目用日期控件,想把My97的资源文件跟TextBox封装成一个DatePicker控件,其实很简单的意见事情,但是还是用了一天多的时间,主要的问题就是解决资源文件加载的问题.通过一天多的努力,得 ...
- css文件内引用外部资源文件的相对路径
1.default.css文件内容(位于css文件夹下): .ClassName .ClassName .ClassName .page-sidebar .sidebar-search .submit ...
- SpringMVC给外部资源加版本号避免缓存
一.属性文件:version.properties ->内容:version=201608 二.java代码 public class configVersion implements Ser ...
- javascript 多线程Web Worker不引用外部js文件的方法
最近在Android开发中 Webview通过调用JavascriptInterface的方式与App交互 在交互的过程中,有些App上的操作时间会比较长,Web中调用的话会造成程序假死的情况 于是想 ...
- awk引用外部变量及调用系统命令方法
目标:想用awk与scp命令批量传送文件 前提:先搭好主机间的免密登陆环境(参考:http://www.cnblogs.com/tankaixiong/p/4172942.html) 实现脚本方法: ...
- java 编译 运行 及 引用外部 jar 包的方法
1. 环境变量配置 JAVA_HOMEC:\Program Files\Java\jdk1.8.0_121; PATH%PATH%;C:\Java\jdk1.6.0_30\bin; CLASSPATH ...
- ASP.NET MVC Areas View 引用 外部母版视图
ASP.NET MVC Area => Areas View 引用 外部母版视图 创建项目:MVCSite.Area 创建mvc area 1.Areas View 引用 外部母版视图 1.1 ...
- 利用命令行引用外部jar包以使程序正常执行的4种方法
声明:本博客为原创博客.未经同意.不得转载!原文链接为http://blog.csdn.net/bettarwang/article/details/30976069 平时写一些小的Java Demo ...
- 页面中如何引用外部的HTML(四种方法)
页面中如何引用外部的HTML(四种方法) 一.总结 一句话总结:a.iframe标签 b.ajax引入代码片段 c.link import的方法导入 d.re ...
随机推荐
- How to upgrade workflow assembly in MOSS 2007
This problem generally start when you are having an existing custom workflow and there are instances ...
- 公司outing选项
Sign up: 2014 Summer Outing 请您从以下三个方案中选择您最感兴趣的一个项目, 如果您不能参加此次summer outing, 请选择"遗憾放弃"- ...
- 用Gradle构建时,将密码等敏感信息放在build.gradle之外
密码 在做版本release时你app的 build.gradle你需要定义 signingConfigs.此时你应该避免以下内容: 不要做这个 . 这会出现在版本控制中. signingConfig ...
- WebRTC for UWP
首先还是简单的介绍下webRTC吧: WebRTC,名称源自网页实时通信(Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的技术,是谷歌2 ...
- C++标准库string类型
string类型支持长度可变的字符串,C++标准库将负责管理与存储字符相关的内存,以及提供各种有用的操作.标准库string类型的目的就是满足对字符串的一般应用. 本文地址:http://www.cn ...
- iOS Block(一)
Block使用总结: 1.格式: ReturnType (^ BlockName)(参数…); //例: int (^ BFunc) (int a, int b); 2.block赋值: block名 ...
- 演示 pull解析的基本步骤(代码演示)
pull解析器: * 反序列化:将xml中的数据取出 1.导入jar包 2.创建解析器工厂 ...
- iOS背景模糊效果3中方法总结
1.首先得把界面转化成图片,给uiview加一个类目如下: #import "UIView+Screen.h" @implementation UIView (Screen) // ...
- iOS开发笔记11:表单键盘遮挡、浮点数价格格式化显示、省市区选择器、View Debugging
1.表单键盘遮挡 应用场景为一个collectionView上有多个textfield.textView供用户填写信息. 之前输入项较少时,采取的方法比较粗暴,didSelectItemAtIndex ...
- onmousedown,onmouseup,onclick同时应用于一个标签节点Element
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...