当前位置: 首页 > news >正文

DevExpress控件使用系列--ASPxUploadControl(图片上传及预览)

 
 
1、控件功能
     列表控件展示数据、弹框控件执行编辑操作、Tab控件实现多标签编辑操 官方说明

2、官方示例
      2.1 ASPxImage
                    http://documentation.devexpress.com/#AspNet/CustomDocument14828
      2.2 ASPxUploadControl
                   http://documentation.devexpress.com/#AspNet/DevExpressWebASPxUploadControl
 
3、使用说明
      3.1 aspx页面说明
        < script type ="text/javascript">
 
        //开始上传文件
        function Uploader_OnUploadStart() {
            btnUpload.SetEnabled(false);
        }
 
        //文件上传完成,并显示图片预览
        function Uploader_OnFileUploadComplete(args) {
            if (args.isValid) {
                var date = new Date();
                imgSrc = "../../Images/UploadImages/" + args.callbackData;  //callbackData为后台传回的图片名称
            }
            getPreviewImageElement().src = imgSrc;  //路径前缀+图片名称,预览图片
        }
 
        //所有文件上传完成
        function Uploader_OnFilesUploadComplete(args) {
            UpdateUploadButton();
        }
 
        //更新上传按钮状态
        function UpdateUploadButton() {
            btnUpload.SetEnabled(uploader.GetText(0) != "");
        }
 
        //获取预览控件编号(上传框textchanged事件)
        function getPreviewImageElement() {
            return document.getElementById("main_Popup_ImgUpload");
        }
    </script>
 
 
 
 
  <tr>
                        <td style="white-space: nowrap">
                            图片预览
                        </td>
                        <td>
                            <dx:ASPxImage runat="server" ID="ImgUpload" ImageUrl="../../Images/ImagePreview.gif"
                                alt="" Width="100px" Height="100px">
                            </dx:ASPxImage>
                        </td>
                        <td style="white-space: nowrap">
                            选择上传图片
                        </td>
                        <td>
                            <dx:ASPxUploadControl ID="uplImage" runat="server" ClientInstanceName="uploader"
                                ShowProgressPanel="True" NullText="点击浏览图片文件..." Size="35" OnFileUploadComplete="uplImage_FileUploadComplete"
                                UploadButton-Text="浏览">
                                <ClientSideEvents FileUploadStart="function(s, e) { Uploader_OnUploadStart(); }"
                                    FileUploadComplete="function(s, e) { Uploader_OnFileUploadComplete(e); }" FilesUploadComplete="function(s, e) { Uploader_OnFilesUploadComplete(e); }"
                                    TextChanged="function(s, e) { UpdateUploadButton(); }"></ClientSideEvents>
                                <ValidationSettings MaxFileSize="4194304" AllowedFileExtensions=".jpg,.jpeg,.jpe,.gif,.png">
                                </ValidationSettings>
                            </dx:ASPxUploadControl>
                            <dx:ASPxButton ID="btnUpload" runat="server" AutoPostBack="False" Text="上传" ClientInstanceName="btnUpload"
                                Width="100px" ClientEnabled="False" Style="margin: 0 auto;">
                                <ClientSideEvents Click="function(s, e) { uploader.Upload(); }" />
                            </dx:ASPxButton>
                        </td>
                    </tr>
       3.2 cs代码说明
 #region 图片上传及预览
    const string UploadDirectory = "~/Images/UploadImages/";  //图片上传文件夹路径
 
    protected void uplImage_FileUploadComplete(object sender, FileUploadCompleteEventArgs e)
    {
        e.CallbackData = SavePostedFile(e.UploadedFile);
    }
 
    string SavePostedFile(UploadedFile uploadedFile)
    {
        if (!uploadedFile.IsValid)
        {
            return string.Empty;
        }
 
        string fileName = Guid.NewGuid() + Path.GetExtension(uploadedFile.FileName);  //文件名
        string filePath = Path.Combine(Server.MapPath(UploadDirectory), fileName);    //文件完整物理路径
        uploadedFile.SaveAs(filePath);
 
        Session["ImgFileName"] = fileName;  //临时存放图片名、用于图片预览
 
        return fileName;  //返回文件名用于预览
    }
    #endregion



From WizNote



转载于:https://www.cnblogs.com/gossip/p/3540347.html

相关文章:

  • linux 常用操作命令
  • Android 编程下背景图片适配工具类
  • javascript数组操作汇总
  • XVim的安装和卸载
  • Linux下C结构体初始化[总结]
  • linux环境搭建过程中遇到的问题
  • 我的北漂在路上--------时不时的停下脚步思考
  • Linux系统管理的基本入手点
  • 使用Android中的通知心得
  • 顺序发送异步请求、同时发送异步请求;apply()与call()的区别
  • 胖子哥的大数据之路(三)- 数据仓库的需求分析该怎么做
  • Ex2010学习(九),个性化OWA界面
  • 郑州表达式
  • 设计模式笔记-观察者(Observer)
  • python升级带来的yum异常
  • (三)从jvm层面了解线程的启动和停止
  • 【跃迁之路】【699天】程序员高效学习方法论探索系列(实验阶段456-2019.1.19)...
  • Git的一些常用操作
  • Javascript弹出层-初探
  • Service Worker
  • Vue 重置组件到初始状态
  • 短视频宝贝=慢?阿里巴巴工程师这样秒开短视频
  • 解析带emoji和链接的聊天系统消息
  • 前嗅ForeSpider教程:创建模板
  • 使用API自动生成工具优化前端工作流
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 找一份好的前端工作,起点很重要
  • 【云吞铺子】性能抖动剖析(二)
  • 从如何停掉 Promise 链说起
  • ​ ​Redis(五)主从复制:主从模式介绍、配置、拓扑(一主一从结构、一主多从结构、树形主从结构)、原理(复制过程、​​​​​​​数据同步psync)、总结
  • ​用户画像从0到100的构建思路
  • (2)Java 简介
  • (C语言)fgets与fputs函数详解
  • (安卓)跳转应用市场APP详情页的方式
  • (力扣)循环队列的实现与详解(C语言)
  • (四) Graphivz 颜色选择
  • (一) storm的集群安装与配置
  • (一)Dubbo快速入门、介绍、使用
  • (一一四)第九章编程练习
  • (转)母版页和相对路径
  • (转)拼包函数及网络封包的异常处理(含代码)
  • (轉貼)《OOD启思录》:61条面向对象设计的经验原则 (OO)
  • ***测试-HTTP方法
  • ***原理与防范
  • .net core 依赖注入的基本用发
  • .NET Core中的去虚
  • .NET Standard / dotnet-core / net472 —— .NET 究竟应该如何大小写?
  • .NET 分布式技术比较
  • .NET 自定义中间件 判断是否存在 AllowAnonymousAttribute 特性 来判断是否需要身份验证
  • .NET实现之(自动更新)
  • .vimrc php,修改home目录下的.vimrc文件,vim配置php高亮显示
  • @在php中起什么作用?
  • [Android] Implementation vs API dependency
  • [Android]通过PhoneLookup读取所有电话号码
  • [BZOJ 4129]Haruna’s Breakfast(树上带修改莫队)