When you click "Cancel" or "Cancel All", CuteWebUI_AjaxUploader_OnStop will be called, you can use the following examples to test it:
<%@ Page Language="C#" %>
<script runat="server">
void InsertMsg(string msg)
{
ListBoxEvents.Items.Insert(0, msg);
ListBoxEvents.SelectedIndex = 0;
}
void Attachments1_AttachmentAdded(object sender, AttachmentItemEventArgs args)
{
InsertMsg(args.Item.FileName + " has been uploaded.");
}
void ButtonDeleteAll_Click(object sender, EventArgs e)
{
InsertMsg("Attachments1.DeleteAllAttachments();");
Attachments1.DeleteAllAttachments();
}
void ButtonTellme_Click(object sender, EventArgs e)
{
ListBoxEvents.Items.Clear();
foreach (AttachmentItem item in Attachments1.Items)
{
InsertMsg(item.FileName + ", " + item.FileSize + " bytes.");
//Copies the uploaded file to a new location.
//item.CopyTo("c:\\temp\\"+item.FileName);
//You can also open the uploaded file's data stream.
//System.IO.Stream data = item.OpenStream();
}
}
</script>
<html xmlns="
http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Uploading multiple files like GMail</title>
<link rel="stylesheet" href="demo.css" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<div class="content">
<h2>
Uploading multiple files like GMail</h2>
<p>
Google's GMail has a nice way of allowing you to upload multiple files. Rather than
showing you 10 file upload boxes at once, the user attaches a file, you can click
a button to add another attachment.
</p>
<br />
<CuteWebUI:UploadAttachments InsertText="Upload Multiple files Now" runat="server"
ID="Attachments1" MultipleFilesUpload="true" OnAttachmentAdded="Attachments1_AttachmentAdded">
<InsertButtonStyle />
</CuteWebUI:UploadAttachments>
<br />
<br />
<asp:Button ID="ButtonDeleteAll" runat="server" Text="Delete All" OnClick="ButtonDeleteAll_Click" />
<asp:Button ID="ButtonTellme" runat="server" Text="Show Uploaded File Information"
OnClick="ButtonTellme_Click" />
<br />
<br />
<div>
Server Trace:
<br />
<asp:ListBox runat="server" ID="ListBoxEvents" Width="400"></asp:ListBox>
</div>
</div>
<script type="text/javascript">
//Fires when an Ajax Uploader is fully initialized
function CuteWebUI_AjaxUploader_OnInitialize()
{
alert("CuteWebUI_AjaxUploader_OnInitialize is called");
var hidden=this;
//warning , using the internalobject is not recommend .
//if you use it, you need test the uploader again for each new version.
var arr=[];
for(var p in hidden.internalobject)
{
arr.push(p);
}
alert("internal object member list : "+arr);
}
//Fires when an upload of a specific file has started
function CuteWebUI_AjaxUploader_OnStart()
{
alert("CuteWebUI_AjaxUploader_OnStart is called");
}
//Fires when upload is stopped and not do postback
function CuteWebUI_AjaxUploader_OnStop()
{
alert("CuteWebUI_AjaxUploader_OnStop is called");
}
//Fires before the page do PostBack to server side and fire the FileUploaded event.
function CuteWebUI_AjaxUploader_OnPostback()
{
alert("CuteWebUI_AjaxUploader_OnPostback is called");
}
//Fires when the upload button is clicked.
function CuteWebUI_AjaxUploader_OnBrowse()
{
alert("CuteWebUI_AjaxUploader_OnBrowse is called");
//return false to cancel it..
}
//Fires when files are selected.
function CuteWebUI_AjaxUploader_OnSelect(files)
{
alert("CuteWebUI_AjaxUploader_OnSelect is called");
//change the files array would take no effect.
var name=files[0].FileName;
var size=files[0].FileSize // (or -1)
//return false to cancel it..
}
//Fires when new information about the upload progress for a specific file is available.
function CuteWebUI_AjaxUploader_OnProgress(enable,filename,begintime,uploadedsize,totalsize)
{
alert("CuteWebUI_AjaxUploader_OnProgress is called");
}
//Fires when the upload queue table is available.
function CuteWebUI_AjaxUploader_OnQueueUI(list)
{
alert("CuteWebUI_AjaxUploader_OnQueueUI is called");
var name=list[0].FileName
var size=list[0].FileSize // (or -1)
var stat=list[0].Status // Finish|Error|Upload|Queue
var func=list[0].Cancel;
}
</script>
</form>
</body>
</html>
Regards,
Eric