0 Files:
<MudFileUpload T="IBrowserFile" FilesChanged="UploadFiles"> <ButtonTemplate> <MudButton HtmlTag="label" Variant="Variant.Filled" Color="Color.Primary" StartIcon="@Icons.Material.Filled.CloudUpload" for="@context.Id"> Upload Files </MudButton> </ButtonTemplate> </MudFileUpload> <MudFileUpload T="IBrowserFile" FilesChanged="UploadFiles"> <ButtonTemplate> <MudFab HtmlTag="label" Color="Color.Secondary" StartIcon="@Icons.Material.Filled.Image" Label="Load picture" for="@context.Id" /> </ButtonTemplate> </MudFileUpload> <MudFileUpload T="IBrowserFile" FilesChanged="UploadFiles"> <ButtonTemplate> <MudFab HtmlTag="label" Color="Color.Success" StartIcon="@Icons.Material.Filled.AttachFile" for="@context.Id" /> </ButtonTemplate> </MudFileUpload> <MudFileUpload T="IBrowserFile" FilesChanged="UploadFiles"> <ButtonTemplate> <MudIconButton HtmlTag="label" Color="Color.Info" Icon="@Icons.Material.Filled.PhotoCamera" for="@context.Id"> </MudIconButton> </ButtonTemplate> </MudFileUpload> <MudFileUpload T="IBrowserFile" FilesChanged="UploadFiles" Disabled> <ButtonTemplate> <MudButton HtmlTag="label" Variant="Variant.Filled" Color="Color.Primary" for="@context.Id"> Disabled Button </MudButton> </ButtonTemplate> </MudFileUpload> @if (files != null) { <MudText Typo="@Typo.h6">@files.Count() File@(files.Count() == 1 ? "" : "s"):</MudText> <MudList> @foreach (var file in files) { <MudListItem Icon="@Icons.Material.Filled.AttachFile" @key=""> @file.Name <code>@file.Size bytes</code> </MudListItem> } </MudList> }
@code { IList<IBrowserFile> files = new List<IBrowserFile>(); private void UploadFiles(IBrowserFile file) { files.Add(file); //TODO upload the files to the server } }
Multiple and Accept
Allow multiple files with T="IReadOnlyList<IBrowserFile>"
or limit the valid file types with Accept
.
To upload more than 10 files, you must specify a MaximumFileCount
.
<MudFileUpload T="IReadOnlyList<IBrowserFile>" FilesChanged="UploadFiles"> <ButtonTemplate> <MudButton HtmlTag="label" Variant="Variant.Filled" Color="Color.Primary" StartIcon="@Icons.Material.Filled.CloudUpload" for="@context.Id"> Multiple Files </MudButton> </ButtonTemplate> </MudFileUpload> <MudFileUpload T="IBrowserFile" Accept=".pdf" FilesChanged="UploadFiles2" MaximumFileCount="100"> <ButtonTemplate> <MudButton HtmlTag="label" Variant="Variant.Filled" Color="Color.Primary" StartIcon="@Icons.Material.Filled.CloudUpload" for="@context.Id"> Only .pdf files </MudButton> </ButtonTemplate> </MudFileUpload> <MudFileUpload T="IBrowserFile" Accept=".png, .jpg" FilesChanged="UploadFiles2" MaximumFileCount="100"> <ButtonTemplate> <MudButton HtmlTag="label" Variant="Variant.Filled" Color="Color.Primary" StartIcon="@Icons.Material.Filled.CloudUpload" for="@context.Id"> Only image files </MudButton> </ButtonTemplate> </MudFileUpload> @if (files != null) { <MudList> @foreach (var file in files) { <MudListItem Icon="@Icons.Material.Filled.AttachFile"> @file.Name <code>@file.Size bytes</code> </MudListItem> } </MudList> }
@code { IList<IBrowserFile> files = new List<IBrowserFile>(); private void UploadFiles(IReadOnlyList<IBrowserFile> files) { foreach (var file in files) { this.files.Add(file); } //TODO upload the files to the server } private void UploadFiles2(IBrowserFile file) { files.Add(file); //TODO upload the files to the server } }