我想知道是否可以通过继承 InputBase 并最好使用 Regex 来使用 Blazor 进行屏蔽输入?如果仅使用 C# 无法实现,那么 JavaScript 就可以了。我知道 Syncfusion 有付费组件,但我更喜欢免费的东西。任何 GitHub 存储库或指导/提示都很好!
我正在开发一个使用 .NET 5 上传 PNG 图像的 Blazor 应用程序。该功能涉及在选择文件并随后提交后显示文件信息(大小、名称等)。
\n一切都按预期进行,除了当我尝试提交一个又一个文件时。我遇到异常:“没有 ID 为 1 的文件。文件列表可能已更改。”
\n这是代码的简化版本:
\n<button @onclick="Submit">T\xc3\xa9l\xc3\xa9charger</button>\n\n@code {\n IList<string> imageDataUrls = new List<string>();\n List<IBrowserFile> list = new List<IBrowserFile>();\n\n void OnInputFileChange(InputFileChangeEventArgs e)\n {\n var maxAllowedFiles = 3;\n list.AddRange(e.GetMultipleFiles(maxAllowedFiles));\n }\n\n async Task Submit()\n { \n var format = "image/png";\n foreach (var imageFile in list)\n { \n var resizedImageFile = await imageFile.RequestImageFileAsync(format,\n 100, 100);\n var buffer = new byte[resizedImageFile.Size];\n await resizedImageFile.OpenReadStream().ReadAsync(buffer);\n var imageDataUrl =\n $"data:{format};base64,{Convert.ToBase64String(buffer)}";\n imageDataUrls.Add(imageDataUrl);\n }\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n尝试按顺序提交多个文件时会出现此问题。我收到与更改文件 ID …