📄 uploadprogressbar.cs
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace Ilungasoft.Framework.Web.UI.WebControls
{
[ToolboxData("<{0}:UploadProgressBar runat=server></{0}:UploadProgressBar>")]
public class UploadProgressBar : Control, ICallbackEventHandler
{
[Bindable(true)]
[Category("Appearance")]
[DefaultValue("传输: {0}K 还未完成")]
[Localizable(true)]
public string UploadingPromptText
{
get
{
String s = (String)ViewState["UploadingPromptText"];
return ((s == null) ? "传输: {0}K 还未完成" : s);
}
set
{
ViewState["UploadingPromptText"] = value;
}
}
[Bindable(true)]
[Category("Appearance")]
[DefaultValue("您的文件已经上传完成")]
[Localizable(true)]
public string UploadCompletedPromptText
{
get
{
String s = (String)ViewState["UploadCompletedPromptText"];
return ((s == null) ? "您的文件已经上传完成" : s);
}
set
{
ViewState["UploadCompletedPromptText"] = value;
}
}
[Bindable(true)]
[Category("Appearance")]
[DefaultValue("上传失败")]
[Localizable(true)]
public string UploadErrorPromptText
{
get
{
String s = (String)ViewState["UploadErrorPromptText"];
return ((s == null) ? "上传失败" : s);
}
set
{
ViewState["UploadErrorPromptText"] = value;
}
}
[Bindable(true)]
[Category("Appearance")]
[DefaultValue("WIDTH: 250px; HEIGHT: 18px")]
[Localizable(true)]
public string ProgressBarCssStyle
{
get
{
String s = (String)ViewState["ProgressBarCssStyle"];
return ((s == null) ? "WIDTH: 250px; HEIGHT: 18px" : s);
}
set
{
ViewState["ProgressBarCssStyle"] = value;
}
}
[Bindable(true)]
[Category("Appearance")]
[DefaultValue("BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; FONT-SIZE: 9pt; OVERFLOW: hidden; BORDER-LEFT: #000000 1px solid; WIDTH: 248px; BORDER-BOTTOM: #000000 1px solid; POSITION: absolute; HEIGHT: 16px; TEXT-ALIGN: center")]
[Localizable(true)]
public string ProgressTextInfoCssStyle
{
get
{
String s = (String)ViewState["ProgressTextInfoCssStyle"];
return ((s == null) ? "BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; FONT-SIZE: 9pt; OVERFLOW: hidden; BORDER-LEFT: #000000 1px solid; WIDTH: 248px; BORDER-BOTTOM: #000000 1px solid; POSITION: absolute; HEIGHT: 16px; TEXT-ALIGN: center" : s);
}
set
{
ViewState["ProgressTextInfoCssStyle"] = value;
}
}
[Bindable(true)]
[Category("Appearance")]
[DefaultValue("OVERFLOW: hidden; WIDTH: 0%; HEIGHT: 18px; BACKGROUND-COLOR: #5fff3f")]
[Localizable(true)]
public string ProgressValueCssStyle
{
get
{
String s = (String)ViewState["ProgressValueCssStyle"];
return ((s == null) ? "OVERFLOW: hidden; WIDTH: 0%; HEIGHT: 18px; BACKGROUND-COLOR: #5fff3f" : s);
}
set
{
ViewState["ProgressValueCssStyle"] = value;
}
}
[Bindable(true)]
[Category("Behavior")]
[DefaultValue("")]
public string UploadButtonName
{
get
{
String s = (String)ViewState["UploadButtonName"];
return ((s == null) ? string.Empty : s);
}
set
{
ViewState["UploadButtonName"] = value;
}
}
[Bindable(true)]
[Category("Behavior")]
[DefaultValue("")]
public string UploadCompleteRedirectUrl
{
get
{
String s = (String)ViewState["UploadCompleteRedirectUrl"];
return ((s == null) ? string.Empty : s);
}
set
{
ViewState["UploadCompleteRedirectUrl"] = value;
}
}
[Bindable(true)]
[Category("Behavior")]
[DefaultValue("")]
public string UploadErrorRedirectUrl
{
get
{
String s = (String)ViewState["UploadErrorRedirectUrl"];
return ((s == null) ? string.Empty : s);
}
set
{
ViewState["UploadErrorRedirectUrl"] = value;
}
}
protected override void OnPreRender(EventArgs e)
{
#region Register Client Script
string script = string.Concat(
"<script language=\"javascript\" type=\"text/javascript\">\r\n",
" var r = \"" + UploadingPromptText.Replace("\\", "\\\\").Replace("\"", "\\\"") + "\";\r\n",
" var s = \"" + UploadCompletedPromptText.Replace("\\", "\\\\").Replace("\"", "\\\"") + "\";\r\n",
" var t = \"" + UploadErrorPromptText.Replace("\\", "\\\\").Replace("\"", "\\\"") + "\";\r\n",
" function progressBar()\r\n",
" {\r\n",
" this.totalSize = 100;\r\n",
" this.sizeCompleted = 0;\r\n",
" this.percentDone = \"0%\";\r\n",
" this.setSize = function(totalSize, size)\r\n",
" {\r\n",
" var oProgressInfo = document.getElementById(\"progressInfo\");\r\n",
" var oProgress = document.getElementById(\"progress\");\r\n",
" if (oProgress == null || oProgressInfo == null)\r\n",
" return;\r\n",
"\r\n",
" if (totalSize <= 0)\r\n",
" return;\r\n",
"\r\n",
" this.totalSize = totalSize;\r\n",
" this.sizeCompleted = size;\r\n",
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -