Ich erstelle Silverlight ohne Visual Studio. Ich habe nur Roh-HTML, XAML und Js (Javascript).Wie kann ich JavaScript-Funktionen aufrufen und Werte von XAML/Silverlight übergeben?
Was ich tun möchte, ist Werte von der XAML an das Javascript übergeben. Ich kann JavaScript-Funktionen von XAML aufrufen und aktivieren. Siehe unten. Das Element canvas hat ein Ereignis zum Aufrufen der linken Maustaste, das LandOnSpace im JavaScript aufruft.
Aber wie würde ich ShowMsg nennen? Genauer gesagt, wie würde ich diesem Aufruf Werte übergeben? Normalerweise in Javascript können Sie einfach gehen: ShowMsg (500, 700, "Sie schulden uns Geld");
Aber wenn ich das im Xaml-Code versuche, bricht es etwas. Ich glaube, es beklagt sich, dass die JavaScript-Funktion nicht existiert.
<Canvas x:Name="btnLandOnSpace" Background="LightGreen" MouseLeftButtonUp="LandOnSpace"
Cursor="Hand" Canvas.Top ="0" Width="70" Height="50">
<TextBlock Text="LandOnSpace" />
</Canvas>
function LandOnSpace(sender, e) { //on server
if (!ShipAnimateActive && !blnWaitingOnServer) {
blnWaitingOnServer = true;
RunServerFunction("/sqgame/getJSLLandOnSpace");
ShowWaitingBox();
};
else {
alert('Waiting on server.');
};
}
function ShowMsg(SintCost, SintRent , SstrChoiceText) {
blnPayChoice = true;
intCost = SintCost;
intRent = SintRent;
strChoiceText = SstrChoiceText; }
In Anbetracht all der Probleme, wäre es vorteilhaft für mich, anstelle von Silverlight zu Mondlicht zu wechseln? Ich könnte auch silverlight insgesamt aufgeben und google O3D zum Rendern verwenden. Es kann die 2d Sachen, die ich tun möchte, ziemlich leicht handhaben. – Neo42
Ich habe auch mit dem Canvas-Tag aus HTML 5 gesucht. Dann wird meine Browser-Unterstützung für jeden Browser sein. IE unterstützt es anscheinend, auf die eine oder andere Weise. – Neo42
Das ist interessant: http://blog.jimmy.schementi.com/2008/05/story-of-ruby-and-python-in-silverlight.html Es gibt etwas namens Chiron, die mir helfen könnte . – Neo42