700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > ASP.NET自定义控件开发系列(二)

ASP.NET自定义控件开发系列(二)

时间:2020-12-12 02:00:38

相关推荐

ASP.NET自定义控件开发系列(二)

在上一篇文章中,通过继承TextBox创建了一个简单的自定义控件。

这篇文章主要讲一下自定义控件中资源文件的封装。 在自定义控件中可能会用到图片、CSS样式表、JS文件等,可以把这些设为控件的属性,让用户来填充,这是一个不太好的办法。本文提供一种方法,将资源文件封装进控件中。 1、首先把需要用到的文件拷贝到控件项目下,如果你的项目下有很多控件,可以分别创建独立的文件夹,放置各自的资源文件。

2、设置文件的属性,如图:生成操作 选择:嵌入的资源

3、打开程序集信息文件,如图:

在文件的最后添加引用的资源文件信息,以图片logo.gif为例。

程序的命名空间为:VeryCodes.Controls.Web,存放图片的文件夹为:BlogTitle [assembly: WebResource("VeryCodes.Controls.Web.BlogTitle.logo.gif", "p_w_picpath/gif")] 如果你有多个文件,依次添加进来就可以了。

常见的格式有:p_w_picpath/gif、text/javascript、text/css等

如果使用png文件可能会有问题,浏览器可能解析不了。 4、在程序中使用:

可以这样得到: String ImgUrl = Page.ClientScript.GetWebResourceUrl(this.GetType(), "VeryCodes.Controls.Web.BlogTitle.logo.gif"); 5、CSS和Js文件的注册:

注册CSS string cssUrl = Page.ClientScript.GetWebResourceUrl(this.GetType(), "VeryCodes.Controls.Web.BlogTitle.logo.css");HtmlLink cssLink = new HtmlLink();cssLink.Href = cssUrl;cssLink.Attributes.Add("rel", "stylesheet");cssLink.Attributes.Add("type", "text/css");Page.Header.Controls.Add(cssLink); 注册Js文件有两种方法: //1 Page.ClientScript.RegisterClientScriptResource(this.GetType(), "VeryCodes.Controls.Web.BlogTitle.logo.js"); //2 string JsUrl = Page.ClientScript.GetWebResourceUrl(this.GetType(), "VeryCodes.Controls.Web.BlogTitle.logo.Js"); Page.Header.Controls.Add(new LiteralControl("<script type=\"text/javascript\" src=\""+ JsUrl +"\" ></script>")) 基本的使用方法到这里就讲完了。

还有一个小技巧:如果图片是在你的JS文件中使用,你就需要修改js,将资源图片作为参数传入。 Ok,本文到此结束! /archives//03/104

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。