IT
文件上传的控件,支持上传后事件,跨服务器上传,自定义可上传文件类型、大小,以及上传文件命名规则。

  1using System.Web.UI.HtmlControls;
  2using System.Configuration;
  3using System.ComponentModel;
  4using System.Web.Security;
  5using System.Security.Principal;
  6using System.Drawing;
  7using System.Drawing.Text;
  8using System.Collections;
  9using System.Collections.Specialized;
 10
 11namespace Rungoo.WebCtrlLib
 12{
 13    /// <summary>
 14    /// 文件上传控件
 15    /// Author:    nowind
 16    /// Date:    2006-3-4
 17    /// Email:    hgh113@sina.com
 18    /// QQ:        87505959
 19    /// </summary>

 20    [DefaultProperty("Text"), 
 21    ToolboxData("<{0}:WebUploadFile runat=server></{0}:WebUploadFile>")]
 22    public class WebUploadFile : System.Web.UI.WebControls.WebControl,INamingContainer
 23    {
 24        private event EventHandler uploaded;
 25        
 26        属性
285
286        声明子控件
293
294        构造函数初始化子控件
324
325        创建子控件
331    
332        将此控件呈现给指定的输出参数    
398
399        上载文件
548
549    }

550}

自定义服务器控件开发之3:自定义缩略图和水印的图片上传控件

        上传图片是经常会使用到的问题,不过每次都去些那些相同的代码确实够麻烦,所有就有了下面这个东东的出现了,哈哈!照顾到大多数人不同的需求,所以提供了多种自定义的功能,不急,下面一一介绍:
         1、用户可控制是否生成缩略图。
         2、用户自己定义缩略图大小,可以指定具体px或%,可以同时指定宽和高,也可以只指定宽,如果只指定宽的参数,则缩略图高度会按原始图片的宽/高比例计算得到。
         3、可自定义是否为图片加上水印,水印有两种方式,一种是文本,一种是图片,分别可自定义。并且水印的位置可控制。如果是文本水印,可指定绘制的文字、文字的大小、颜色和阴影颜色已经阴影的偏移距离。
         4、可控制图片上传后是否立即显示,显示位置(上传框上方或下方),显示的信息有三种可选:图片和图片信息、图片信息、仅图片。
         5、可控制图片的文件大小、图片的绝对尺寸大小。
         6、自定义图片存放路径。
         7、可将图片上传至远程服务器,也就是非web程序运行的其他计算机,条件是需要设置相关的远程服务器登陆的ip或机器名、登陆帐号、登陆密码、共享路径和用于图片web访问Url路径,以便存放数据库。
         8、用户自己定义文件浏览框、按钮的样式。
         9、另外拥护上传成功后会返回两个属性 UrlInfoBigImage和UrlInfoSmallImage ,分别是大小图片的url路径,直接获取就可以了。   
         10、对于控件的设置,如果是新上传图片,只需要设置上传路径ComputerUrlPath属性,如果是编辑已经上传的图片,只需要对UrlInfoBigImage赋值即可。
         11、支持上传后事件,方便开发人员定义不同操作。
         12、所有的路径为相对站点根路径,比如站点为http://localhost/nowind/images/head/1.jpg ,其中nowind为虚拟目录,则图片的UrlInfoBigImage应该为images/head/1.jpg 注意前面不带"/"。则ComputerUrlPath应该为 images/head/

    
posted on 2011-09-15 13:41  liufei  阅读(313)  评论(0编辑  收藏  举报