Telerik is a leading vendor of ASP.NET AJAX, ASP.NET MVC, Silverlight, WinForms and WPF controls and components, as well as .NET Reporting, .NET ORM , .NET CMS, Code Analysis, Mocking, Team Productivity and Automated Testing Tools. Building on its expertise in interface development and Microsoft technologies, Telerik helps customers build applications with unparalleled richness, responsiveness and interactivity. Telerik products help thousands of companies to be more productive and deliver reliable applications under budget and on time.
Version Q2 2011 released 07/12/2011
select

Upload / Additional Fields

  • Uploaded % ( ) Total
  • Uploaded files: % () Total files:
  • Uploading file:
  • Elapsed time:  Estimated time:  Speed:
No uploaded files


  • Note: The largest allowed combined file size for upload in this example is 100MB. This is specified by the maxRequestLength="102400" set in Web.config file. If you attempt to upload files with total size greater that 100MB you will get "Page Not Found" error. For more information about uploading large files visit the help article Uploading Large Files

Source Code

C# VB.NET
Show code in new window Demo isolation steps
  • <%@ Page Language="vb" CodeFile="DefaultVB.aspx.vb" AutoEventWireup="true" Inherits="Telerik.Web.Examples.Upload.AdditionalFields.DefaultVB" %>
    <%@ register tagprefix="telerik" namespace="Telerik.Web.UI" assembly="Telerik.Web.UI" %>
    <%@ register tagprefix="qsf" namespace="Telerik.QuickStart" %>
    <%@ register tagprefix="qsf" tagname="Header" src="~/Common/Header.ascx" %>
    <%@ register tagprefix="qsf" tagname="HeadTag" src="~/Common/HeadTag.ascx" %>
    <%@ register tagprefix="qsf" tagname="Footer" src="~/Common/Footer.ascx" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/tr/xhtml11/dtd/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <qsf:headtag runat="server" id="Headtag1" />
        
        <link rel="stylesheet" type="text/css" href="ExampleFiles/Styles.css"/>
    </head>
    <body class="BODY">
        <form runat="server" id="mainForm" method="post">
         <telerik:RadScriptManager id="ScriptManager1" runat="server" />
        
            <qsf:Header runat="server" id="Header1" NavigationLanguage="VB" />        

            <telerik:RadProgressManager id="Radprogressmanager1" runat="server" />
            
            <table class="AdditionalFields">
                <tr>
                    <td class="TopCell" colspan="2"></td>
                </tr>
                <tr>
                    <td class="BodyCell">
                        <div class="FileDetails">
                            <telerik:RadUpload ID="RadUpload1" runat="server" ControlObjectsVisibility="AddButton"
                                EnableFileInputSkinning="true" InitialFileInputsCount="1" OnClientAdded="addTitle"/>
                                
                            <telerik:RadProgressArea id="progressArea1" runat="server" />
                        </div>
                    </td>
                    <td class="BodyCell RightCell">
                        <div class="uploadedfiles">
                            <div>
                                <asp:label id="labelNoResults" runat="server" visible="True">No uploaded files</asp:label>
                                <asp:Repeater id="repeaterResults" runat="server" visible="False">
                                    <HeaderTemplate>
                                        Uploaded files:<br />
                                    </HeaderTemplate>
                                    <ItemTemplate>
                                        <span style="font-weight: normal; font-size: 10px; color: black;">
                                            Title:&nbsp;<%#(Container.DataItem).GetFieldValue("Title")%><br />
                                            Description:&nbsp;<%#(Container.DataItem).GetFieldValue("Desc")%><br />
                                            File:&nbsp;<%#DataBinder.Eval(Container.DataItem, "FileName").ToString()%><br />
                                            File&nbsp;Size:&nbsp;<%#DataBinder.Eval(Container.DataItem, "ContentLength").ToString() + "&nbsp;bytes"%><br />
                                            Should Create Thumbnail:&nbsp;<%#(Container.DataItem).GetIsFieldChecked("Thumbnail")%>
                                            <br />
                                            <br />
                                        </span>
                                    </ItemTemplate>
                                </asp:Repeater>
                            </div>
                        </div>
                    </td>
                </tr>
                <tr>
                    <td class="BottomCell" colspan="2">
    <asp:button id="buttonSubmit" runat="server" cssclass="RadUploadButton" onclick="buttonSubmit_Click"
    text="Submit" /></td>

                </tr>
            </table>
            <br />
            
            <script type="text/javascript">
                function addTitle(radUpload, args)
                {
                    var curLiEl = args.get_row();
                    var firstInput = curLiEl.getElementsByTagName("input")[0];
                    
                    //Create a simple HTML template.
                    var table = document.createElement("table");
                    table.className = 'AdditionalInputs';
                    
                    //A new row for a Title field
                    row = table.insertRow(-1);
                    cell = row.insertCell(-1);
                    var input = CreateInput("Title", "text");
                    input.className = "TextField";
                    input.id = input.name = radUpload.getID(input.name);
                    var label = CreateLabel("Title",input.id);
                    cell.appendChild(label);
                    cell = row.insertCell(-1);
                    cell.appendChild(input);
                   
                    //A new row for a Description field
                    row = table.insertRow(-1);
                    cell = row.insertCell(-1);
                    
                    input = CreateInput("Desc", "text");
                    input.className = "TextField";
                    input.id = input.name = radUpload.getID(input.name);
                    label = CreateLabel("Description",input.id);
                    cell.appendChild(label);
                    cell = row.insertCell(-1);
                    cell.appendChild(input);
                    
                    //A new row for a Thumbnail checkbox
                    row = table.insertRow(-1);
                    cell = row.insertCell(-1);
                    cell.colSpan = 2;
                    cell.className = "checkboxContainer";
                    input = CreateInput("Thumbnail", "checkbox");
                    input.id = input.name = radUpload.getID(input.name);
                    label = CreateLabel("Create thumbnail",input.id);
                    cell.appendChild(input);
                    cell.appendChild(label);
                    
                    //Add a File label in front of the file input
                    var fileInputSpan = curLiEl.getElementsByTagName("span")[0];
                    var firstNode = curLiEl.childNodes[0];
                    label = CreateLabel("File",radUpload.getID());
                    curLiEl.insertBefore(label, firstNode);
                    
                    curLiEl.insertBefore(table, label);
                }
                
                function CreateLabel(text, associatedControlId)
                {
                    var label = document.createElement("label");
                    label.innerHTML = text;
                    label.setAttribute("for", associatedControlId);
                    label.style.fontSize = 12;
                    
                    return label;
                }
                
                function CreateInput(inputName, type)
                {
                    var input = document.createElement("input");
                    input.type = type;
                    input.name = inputName;
                    
                    return input;
                }
            </script>
            
            <qsf:Footer runat="server" ID="Footer1" />
        </form>
    </body>
    </html>

Get more than expected!

 
 

Take your time to truly experience the power of RadControls for ASP.NET AJAX with a free 60-day trial backed up by Telerik’s unlimited dedicated support.

Download your RadControls for ASP.NET AJAX trial and jumpstart your development with the available Getting Started resources.

If you have any questions, do not hesitate to contact us at sales@telerik.com.

Copyright 2002-2024 © Telerik. All right reserved
Telerik Inc, 201 Jones Rd, Waltham, MA 02451