Tab

ASPxFileManager Class

A file management control.

Namespace: DevExpress.Web

Assembly: DevExpress.Web.v21.2.dll

Declaration

public class ASPxFileManager :
    ASPxDataWebControl,
    IRequiresLoadPostDataControl,
    IParentSkinOwner,
    ISkinOwner,
    IPropertiesOwner,
    IControlDesigner

Remarks

The ASPxFileManager control allows you to manage files and folders.

ASPxFileManager - ASPxFileManager

Create a File Manager

Design Time

The ASPxFileManager control is available on the DX.21.2: Common Controls toolbox tab in the Microsoft Visual Studio IDE.

FileManager in Toolbox

Drag the control onto a form and customize the control’s settings, or paste the control markup in the page’s source code.

Note

To properly function, DevExpress controls require that special modules, handlers and options are registered in the the Web.config file. Switch the Microsoft Visual Studio IDE to the Design tab to automatically update the Web.config file with the required DevExpress information.

<dx:ASPxFileManager ID="fileManager" runat="server" ...>
    <Settings RootFolder="~/Content/FileManager/Files" ThumbnailFolder="~/Content/FileManager/Thumbnails" />
    <SettingsUpload UseAdvancedUploadMode="true">
        <AdvancedModeSettings EnableMultiSelect="true" />
    </SettingsUpload>
</dx:ASPxFileManager>

Run Time

using DevExpress.Web;
...
protected void Page_Load(object sender, EventArgs e)
{
    ASPxFileManager fm = new ASPxFileManager();
    fm.ID = "ASPxFileManager1";
    fm.SettingsUpload.ValidationSettings.DisableHttpHandlerValidation = true;
    Page.Form.Controls.Add(fm);

    fm.SettingsUpload.UseAdvancedUploadMode = true;
    fm.SettingsUpload.AdvancedModeSettings.EnableMultiSelect = true;
}

Note

The File Manager requires registering the ASPxUploadProgressHttpHandler in the web.config file. If it’s impossible to automatically validate the ASPxUploadProgressHttpHandler, for example, if the handler is registered inside the <location> section and the InheritInChildApplications property is set to false, disable the automatic validation option by setting the DisableHttpHandlerValidation property to false.

Client-Side API

The ASPxFileManager’s client-side API is implemented with JavaScript language and exposed by the ASPxClientFileManager object.

Availability

Available by default.

Client object type

ASPxClientFileManager

Access name

ASPxFileManager.ClientInstanceName

Events

ASPxFileManager.ClientSideEvents

See demo

Folder Structure

Use the InitialFolder property to specify the initially selected folder in the file manager, where a user starts browsing. If the property value is empty, the file manager uses the path from the RootFolder property as an initial folder.

FileManager - Folder Structure

<dx:ASPxFileManager ID="ASPxFileManager1" runat="server" Width="700px">
     <Settings RootFolder="~\Files\" ThumbnailFolder="~\Thumbnails\" 
          AllowedFileExtensions=".jpg, .jpeg, .gif, .rtf, .txt, .avi, .png, .mp3, .xml, .doc, .pdf" 
          InitialFolder="Images\Employees" />
     <SettingsEditing AllowCreate="True" AllowDelete="True" AllowMove="True" AllowRename="True" />
     <SettingsPermissions>
          <AccessRules>
               <dx:FileManagerFolderAccessRule Edit="Deny" />
               <dx:FileManagerFolderAccessRule Edit="Allow" Path="Documents\Reports" />
          </AccessRules>
     </SettingsPermissions>
</dx:ASPxFileManager>

Learn more

Data Binding

The ASPxFileManager allows you to load its content from a database. Assign a data source to the DataSourceID property and map the data source’s fields to the file manager (SettingsDataSource).

<dx:ASPxFileManager ID="ASPxFileManager1" runat="server" DataSourceID="AccessDataSource1">
    ...
    <SettingsDataSource KeyFieldName="Id" ParentKeyFieldName="ParentID" NameFieldName="Name" 
        IsFolderFieldName="IsFolder" FileBinaryContentFieldName="Data" LastWriteTimeFieldName="LastWriteTime"/>
</dx:ASPxFileManager>
<asp:AccessDataSource ID="AccessDataSource1" runat="server" DataFile="~/App_Data/FilesCatalog.mdb" 
    SelectCommand="SELECT [ID], [Name], [ParentID], [IsFolder], [Data], [LastWriteTime] FROM [FileSystem]"
    ...
</asp:AccessDataSource>

See demo

View Modes

The ASPxFileManager supports two file list view modes (View property):

  • Thumbnails - Displays files’ thumbnails.
  • Details - Displays information about files in a grid view.
<dx:ASPxFileManager ID="fileManager" runat="server" >
    ...
    <SettingsFileList View="Details">
        <DetailsViewSettings AllowColumnResize="true" AllowColumnDragDrop="true" />
    </SettingsFileList>
</dx:ASPxFileManager>

Learn more | See demo

Thumbnails Support

ASPxFileManager automatically creates thumbnails for image files with the following file extensions: .bmp, .gif, .ico, .jpg, .jpeg, .png. You can also use the the CustomThumbnail event to provide custom thumbnails for the ASPxFileManager.

<dx:ASPxFileManager ID="fileManager" runat="server" OnCustomThumbnail="fileManager_CustomThumbnail">
    ...
</dx:ASPxFileManager>