Esempio n. 1
0
        public static MvcHtmlString WebUploader(this HtmlHelper htmlHelper, string name, Global_WebUploader webuploader = null)
        {
            if (webuploader == null)
            {
                webuploader = new Global_WebUploader();
            }
            //对象属性名称
            var webUploaderId = name + "WebUploaderId";
            var hideHtml      = htmlHelper.Hidden(name);
            //最外层DIV
            var divBuilder = new TagBuilder("div");

            divBuilder.GenerateId(webUploaderId);
            divBuilder.AddCssClass(webuploader.Style);
            //按钮外层区域
            var buttonareaDivBuilder = new TagBuilder("div");

            buttonareaDivBuilder.AddCssClass("uploader-style-buttonarea");
            //上传按钮
            var buttonareaUploadBuilder = new TagBuilder("div");

            buttonareaUploadBuilder.AddCssClass("uploader-style-buttonarea-upload");
            buttonareaUploadBuilder.AddCssClass("WebUploader-upload");
            buttonareaUploadBuilder.SetInnerText(webuploader.UploadName);
            //选择图片按钮
            var buttonareaFilePickerBuilder = new TagBuilder("div");

            buttonareaFilePickerBuilder.AddCssClass("uploader-style-buttonarea-filePicker");
            buttonareaFilePickerBuilder.AddCssClass("WebUploader-filePicker");
            buttonareaFilePickerBuilder.SetInnerText(webuploader.FilePickerName);
            //缩略图展示区域外层
            var buttonareaFileListBuilder = new TagBuilder("div");

            buttonareaFileListBuilder.AddCssClass("uploader-style-fileList");
            buttonareaFileListBuilder.AddCssClass("WebUploader-fileList");

            //组装结构
            buttonareaDivBuilder.InnerHtml = (buttonareaUploadBuilder.ToString() + buttonareaFilePickerBuilder.ToString());
            divBuilder.InnerHtml           = hideHtml + buttonareaDivBuilder.ToString() + buttonareaFileListBuilder.ToString();

            //注册样式文件、脚本文件和注册事件
            Client.RegistCss("/Scripts/Common/Upload/webuploader.css");
            Client.RegistScripts("/Scripts/Common/Upload/webuploader.js");
            Client.RegistScripts("/Scripts/Common/Upload/Extensions/webuploaderextensions.js", priority: 101);
            var defaultWebuploader = new Global_WebUploader();
            var options            = "" +
                                     (defaultWebuploader.Width != webuploader.Width ? ("width:" + webuploader.Width) : "")
                                     + (defaultWebuploader.Height != webuploader.Height ? ("height:" + webuploader.Height) : "")
                                     + (webuploader.AutoUpload ? ("autoUpload:" + webuploader.AutoUpload.ToString().ToLower()) : "")
                                     + (webuploader.IsImage ? "" : ("isImage:" + webuploader.IsImage.ToString().ToLower()))
                                     + (defaultWebuploader.FileNumLimit != webuploader.FileNumLimit ? ("fileNumLimit:" + webuploader.FileNumLimit) : "")
                                     + (defaultWebuploader.FileSizeLimit != webuploader.FileSizeLimit ? ("fileSizeLimit:" + webuploader.FileSizeLimit) : "")
                                     + (defaultWebuploader.FileSingleSizeLimit != webuploader.FileSingleSizeLimit ? ("fileSingleSizeLimit:" + webuploader.FileSingleSizeLimit) : "")
                                     + (",server:" + "'" + webuploader.Server + "'");

            Client.RegistScriptBlock("window.registerWebUploader('#" + webUploaderId + "', { " + options + " });");
            return(new MvcHtmlString(divBuilder.ToString()));
        }
Esempio n. 2
0
        public static MvcHtmlString WebUploaderFor <TModel, TProperty>(this HtmlHelper <TModel> htmlHelper, Expression <Func <TModel, TProperty> > expression, Global_WebUploader webuploader = null)
        {
            if (webuploader == null)
            {
                webuploader = new Global_WebUploader();
            }
            //对象属性名称
            var name          = ExpressionHelper.GetExpressionText(expression);
            var webUploaderId = name + "WebUploaderId";
            var hideHtml      = htmlHelper.HiddenFor(expression, (IDictionary <string, object>)null);
            //最外层DIV
            var divBuilder = new TagBuilder("div");

            divBuilder.GenerateId(webUploaderId);
            divBuilder.AddCssClass(webuploader.Style);
            //按钮外层区域
            var buttonareaDivBuilder = new TagBuilder("div");

            buttonareaDivBuilder.AddCssClass("uploader-style-buttonarea");
            //上传按钮
            var buttonareaUploadBuilder = new TagBuilder("div");

            buttonareaUploadBuilder.AddCssClass("uploader-style-buttonarea-upload");
            buttonareaUploadBuilder.AddCssClass("WebUploader-upload");
            buttonareaUploadBuilder.SetInnerText(webuploader.UploadName);
            //选择图片按钮
            var buttonareaFilePickerBuilder = new TagBuilder("div");

            buttonareaFilePickerBuilder.AddCssClass("uploader-style-buttonarea-filePicker");
            buttonareaFilePickerBuilder.AddCssClass("WebUploader-filePicker");
            buttonareaFilePickerBuilder.SetInnerText(webuploader.FilePickerName);
            //缩略图展示区域外层
            var buttonareaFileListBuilder = new TagBuilder("div");

            buttonareaFileListBuilder.AddCssClass("uploader-style-fileList");
            buttonareaFileListBuilder.AddCssClass("WebUploader-fileList");

            //组装结构
            buttonareaDivBuilder.InnerHtml = (buttonareaUploadBuilder.ToString() + buttonareaFilePickerBuilder.ToString());
            divBuilder.InnerHtml           = hideHtml + buttonareaDivBuilder.ToString() + buttonareaFileListBuilder.ToString();

            //注册样式文件、脚本文件和注册事件
            Client.RegistCss("/Scripts/Common/Upload/webuploader.css");
            Client.RegistScripts("/Scripts/Common/Upload/webuploader.js");
            Client.RegistScripts("/Scripts/Common/Upload/Extensions/webuploaderextensions.js", priority: 101);
            var defaultWebuploader = new Global_WebUploader();
            var options            = "" +
                                     (defaultWebuploader.Width != webuploader.Width ? ("width:" + webuploader.Width) : "")
                                     + (defaultWebuploader.Height != webuploader.Height ? ("height:" + webuploader.Height) : "")
                                     + (webuploader.AutoUpload ? ("autoUpload:" + webuploader.AutoUpload.ToString().ToLower()) : "")
                                     + (webuploader.IsImage ? "" : ("isImage:" + webuploader.IsImage.ToString().ToLower()))
                                     + (defaultWebuploader.FileNumLimit != webuploader.FileNumLimit ? ("fileNumLimit:" + webuploader.FileNumLimit) : "")
                                     + (defaultWebuploader.FileSizeLimit != webuploader.FileSizeLimit ? ("fileSizeLimit:" + webuploader.FileSizeLimit) : "")
                                     + (defaultWebuploader.FileSingleSizeLimit != webuploader.FileSingleSizeLimit ? ("fileSingleSizeLimit:" + webuploader.FileSingleSizeLimit) : "")
                                     + ("server:" + "'" + webuploader.Server + "'");

            Client.RegistScriptBlock("window.registerWebUploader('#" + webUploaderId + "', { " + options + " });");
            return(new MvcHtmlString(divBuilder.ToString()));

            //特性操作
            // // Gets the attributes for the property.
            //AttributeCollection attributes =
            //   TypeDescriptor.GetProperties(this)["MyProperty"].Attributes;
            // Prints the default value by retrieving the DefaultValueAttribute
            //  from the AttributeCollection. /
            //DefaultValueAttribute myAttribute =
            //   (DefaultValueAttribute)attributes[typeof(DefaultValueAttribute)];
            //Console.WriteLine("The default value is: " + myAttribute.Value.ToString());
        }