DxFileInput.ExternalDropZoneCssSelector Property
Specifies the CSS selector of a container or HTML element where users can drop files.
Namespace: DevExpress.Blazor
Assembly: DevExpress.Blazor.v26.1.dll
Declaration
[Parameter]
public string ExternalDropZoneCssSelector { get; set; }
Property Value
| Type | Description |
|---|---|
| String | The CSS selector of a container or HTML element. |
Remarks
You can enable drag and drop functionality in the File Input component. To enable this functionality, create a drop zone and assign its CSS selector to the ExternalDropZoneCssSelector property. The ExternalDropZoneDragOverCssClass property specifies the CSS class applied to this drop zone when users drag files over it.
The following example implements an external select button and a drop zone container for the File Input component:

<div id="overviewDemoDropZone" class="custom-drop-zone">
<span class="drop-file-icon"></span>
<span>Drag and Drop File Here</span><span class="custom-drop-zone-separator">or</span>
<button id="overviewDemoSelectButton" class="custom-select-button">Select File</button>
</div>
<DxFileInput Visible="FileInputVisible"
FilesUploading="OnFilesUploading"
SelectedFilesChanged="SelectedFilesChanged"
ExternalSelectButtonCssSelector="#overviewDemoSelectButton"
ExternalDropZoneCssSelector="#overviewDemoDropZone"
ExternalDropZoneDragOverCssClass="custom-drop-zone-drag-over" />
@code {
bool FileInputVisible { get; set; } = false;
protected void SelectedFilesChanged(IEnumerable<UploadFileInfo> files) {
FileInputVisible = files.ToList().Count > 0;
InvokeAsync(StateHasChanged);
}
async Task OnFilesUploading(FilesUploadingEventArgs args) {
foreach (var file in args.Files) {
/* The following code is intended for demonstration purposes only.
Do not read a stream directly in memory to avoid performance and security-related issues. */
using var stream = new System.IO.MemoryStream();
await file.OpenReadStream(file.Size).CopyToAsync(stream);
}
}
}
See Also