Get mutiple files from Input failed
since LINQPad.Controls.FilePicker can only choose one file, I try to implement by extend LINQPad.Controls.TextBox.
var tbFileSingle = new LINQPad.Controls.TextBox().SetFile().Dump("Single File"); var btnSingle = new LINQPad.Controls.Button("print selected single file").Dump("Single File"); btnSingle.Click += (s, e) => { tbFileSingle.Text.Dump("Single File"); }; var tbFileMultiple = new LINQPad.Controls.TextBox().SetFileMutiple().Dump("Multiple File"); var btnMultiple = new LINQPad.Controls.Button("print selected mutiple file").Dump("Multiple File"); btnMultiple.Click += (s, e) => { tbFileMultiple.Text.Dump("Multiple File"); }; public static class Ext_TextBox { public static LINQPad.Controls.TextBox SetFile(this LINQPad.Controls.TextBox control) { control.HtmlElement.SetAttribute("type", "file"); return control; } public static LINQPad.Controls.TextBox SetFileMutiple(this LINQPad.Controls.TextBox control) { control.SetFile(); control.HtmlElement.SetAttribute("multiple", ""); return control; } }
I can get file path with single file setting, but can't get all file path with mutilple file setting.
Any solution?
Comments
Btw, FilePicker could't choose file by drag, while my extend for TextBox allow drag file or files.
You can inspect specific field content in HTML DevTools (
F12
in result pane) by executing in consoledocument.getElementById("<ID>").files
Win32 multiselect file dialog using nuget (save as script file first):
Thanks, I add your method to TextBox Extend
I found another problem, below code varaible path alway get "C:\fakepath"
and single file TextBox.Text Get "C:\fakepath\xxxx.xx" too.
the path folder all shows "C:\fakepath" instead of correct path
I think it's the browser limitation. Inspect shows no file path at all.