Я имею в виду приложение WinForms (VS2019,. NET 4.7.2), которое хочет использовать CefSharp
в качестве основного интерфейса (Cef 79.1.36 + g90301bd + chromium-79.0.3945.130).
У меня есть простая форма, загруженная из локального html файла с именем form.html
, где соответствующий раздел (за исключением большинства шаблонов HTML) выглядит так:
<form method="POST">
<input type="text" name="Name" placeholder="Name" /><br>
<input type="text" name="Place" placeholder="Place" /><br>
<input type="submit" />
</form>
Файл формы загружается по пользовательской схеме:
settings.RegisterScheme(new CefCustomScheme
{
SchemeName = "folder",
DomainName = "local",
SchemeHandlerFactory = new FolderSchemeHandlerFactory(
rootFolder: $@"{Application.StartupPath}\wwwroot",
hostName: "local",
defaultPage: "index.html")
});
Код, который фактически загружает его, находится в Form1.cs
и выглядит так:
browser.Load("folder://local/form.html");
Форма загружается нормально и отображается, как и ожидалось ,
Теперь, когда пользователь нажимает кнопку Submit
, я хочу перехватить отправку и обработать отправленные данные (значения, введенные для Name
и Place
в данном случае) в моем C# код. Я не хочу, чтобы форма фактически отправлялась на какой-либо веб-сервер - мне просто нужно иметь возможность получить данные формы и работать с ними в своем коде C # / WinForms.
Я не уверен, как это сделать. Прямо сейчас, после нажатия кнопки Submit
, форма очищается (предположительно, перезагружается с того же URL-адреса), но я не знаю, куда отправлены отправленные данные. Буду признателен за любые подсказки.