Wie kann ich ein ActiveX-control geschrieben mit C# - Ereignisse in JavaScript wenn auf Sie geklickt?
Sehe ich ein paar Fragen zu diesem SO schon, aber ich denke mir hinreichend Verschieden ist, um nicht als Duplikat erkannt wird (wenn ich falsch bin, lassen Sie mich wissen).
Habe ich ein ActiveX-Steuerelement, die ich geschrieben habe in C# und zwar habe ich es vor allem arbeiten, möchte ich auf ein Ereignis in JavaScript, wenn es angeklickt wird (es zeigt ein Bild also ist es ein visuelles element auf der Seite).
Dem Ziel, sich was ich bin auf der Suche zu erreichen, ist nicht anders als wenn es ein <span>
tag und es hatte ein onclick
Ereignis, um eine JavaScript-Funktion, wenn der Bereich, der den tag geklickt wurden.
Meisten Sachen, die ich gelesen habe auf geht es in sehr feinen Details, wie Ereignisse in einem ActiveX-Steuerelement und send-info - /zurück -, und das ist in Ordnung, aber es scheint zu kompliziert. Ich bin nicht auf der Suche, um die Kommunikation mit dem ActiveX-Steuerelement, brauche ich nur eine JavaScript-Funktion, um das Feuer aus, wenn ich es auf, in einer Weise ähnlich wie ein <span>
oder <div>
tag. Ich kann alles andere in JavaScript. Einfach wickeln Sie das Steuerelement in einem <span>
oder <div>
mit einem onclick
Ereignis hat keine Auswirkung - das ActiveX-Steuerelement ziemlich übersteuert es.
Gibt es eine einfache Art das zu handhaben, für ein ActiveX-Steuerelement in C# geschrieben?
Ich denke, eine andere Möglichkeit der Umsetzung ist - ich arbeite mit einer Dritten Partei Kontrolle, und wir müssen, verwenden Sie code wie den folgenden zu bekommen, um die Kommunikation mit unseren HTML-Seite über JavaScript
<script type="text/javascript" event="OnMouseClick(index)" for="AXObjectName">
<!--
AXObjectName_OnMouseClick(index);
//-->
</script>
Wo AXObjectName
ist der name/id des Steuerelements und AXObjectName_OnMouseClick
ist der name der JavaScript-Funktion, es wird Feuer in meinem code, die übergabe einer index
parameter. Jedoch, was muss ich tun, um set-up eine Methode wie OnMouseClick
in die Steuerung? Und wenn ich nicht will, um eine tatsächliche information (d.h., keine index
) muss ich auch haben um so weit zu gehen?
- Ich vermute, Sie haben bereits gesehen, dass dieses code-Beispiel: c-sharpcorner.com/UploadFile/dsandor/...
- Ich eigentlich nur eingebaut, den link, so finde ich es auf meinem anderen computer. Ich werde versuchen, ein ActiveX-Steuerelement experiment selbst und vielleicht herauszufinden, die event-Sache. Es sieht relativ einfach.
- ja, und es ist einer von denen, die ich gefolgt, so weit zu kommen. Was Sie nicht tun, obwohl, ist, zu zeigen, wie die Interaktion mit dem ActiveX-Steuerelement kann eine Wirkung auf das JavaScript in der Seite.
Du musst angemeldet sein, um einen Kommentar abzugeben.
ActiveX-Ereignisse werden behandelt, über COM, also müssen Sie Tauchen Sie ein in es ein wenig leider.
Die Sache zu erinnern, mit COM ist, dass alles geschieht über Schnittstellen, so dass Sie müssen in der Regel zwei Schnittstellen, eine für die Eigenschaften und eine für Ihre Veranstaltungen.
Den Schlüssel für die Veranstaltungen ist die Kennzeichnung der Klasse mit der ComSourceInterfaces-Attribut, das beschrieben wird durch die MSDN als "Identifiziert eine Liste von Schnittstellen als COM-event-Quellen für die zugeschrieben Klasse."
Diese einfache Klasse Struktur sollte für Sie arbeiten (es hat für mich in der Vergangenheit).
Wenn Sie brauchen nicht alle Eigenschaften können Sie nur ausschließen, dass der IActiveX-Schnittstelle. Auch wenn Sie gehen, um das Click-Ereignis, die Sie benötigen, um Sie zu markieren, wie neue, um es zu übergeben, um COM.