Ich verwende GeckoWebBrowser
innerhalb meines VB.NET
(Windows Form App) Programms. Die GeckoWebBrowser
lädt eine lokale html
Datei. Diese html
hat inline eine svg
Datei (human body diagram with bones and internal organs) mit einer javascript
Funktion für die Aufnahme aller "IDs" der Elemente aus dem Dokument svg
eingebettet. Ich möchte die oben genannte javascript
Funktion von VB.NET
(Windows Form App) anrufen, aber ich weiß nicht, wie es geht. Kann mir jemand helfen oder geben Sie mir bitte einen Quellcode? All das, was ich gefunden habe, mit Sitz in C#
... Dies ist meine javascript
Funktion in meiner html
Datei:VB.NET Gecko Web Browser Javascript Funktion aufrufen?
<script type="text/javascript">
(funcion() {
// Function to be called in VB.NET when the DOM is loaded
var SVGHandler = function() {
// Picking up the id Root Node="CUERPO_HUMANO" into svg variable
var svg = document.querySelector('#CUERPO_HUMANO');
// In Items we save all the <g> which have an ID
var items = svg.querySelectorAll('g[id], path[id]');
//var items = svg.querySelectorAll('g[id]');
// We loop all the nodes saved in Items and add them to click event listener
forEach(items, function (index, value) {
value.addEventListener('click', function (event) {
event.preventDefault();
//We avoid the spread of events
event.stopPropagation();
return event.currentTarget.id
// console.log(event.currentTarget.id)
});
});
}
// https://toddmotto.com/ditch-the-array-foreach-call-nodelist-hack/
var forEach = function (array, callback, scope) {
for (var i = 0; i < array.length; i++) {
callback.call(scope, i, array[i]); // passes back stuff we need
}
};
// With this method, we call a SVGHandler when DOM is totally loaded
document.addEventListener('DOMContentLoaded', SVGHandler);
})();
</script>
Welcher Code sollte ich in VB.NET
für den Aufruf meiner javascript
Funktion jedes Mal, wenn ich auf einen Klick spezifischer Knochen oder Organ im menschlichen Körper Diagramm geladen in GeckoWebBrowser
? Ich möchte die "ID" speichern, die mit dem Aufruf in eine string
Variable aufgenommen wurde, um es als einen Parameter in einer SQL
-Anweisung zu verwenden und eine DataGridView
aufzufüllen. Ich habe gesucht und alles, was ich finden konnte, war im Zusammenhang mit C#
, kein einziges VB.NET
Beispiel. Obwohl ich versuchte, die Äquivalenz in VB.NET
herauszufinden, die C#
Beispiele zu VB.NET
zu konvertieren, habe ich einige Zweifel, wie man den javascript
Aufruf macht. Nach meiner javascript
Funktion so etwas wie dies Es könnte sein:
browserControl.Navigate("javascript:void(funcion())");
Bitte, Kann jemand mir helfen, dieses Problem zu lösen? Ich wäre sehr dankbar ...