2012-05-03 5 views
3

こんにちはIamの窓の電話fresher.Canの誰かがPho​​negap(Windows Mobile)のjavascriptでC#のメソッドを呼び出す方法を教えてください。どのようにphonegapのWindowsの電話機でjavascriptからC#のコードを呼び出す方法

次のエラーが発生しました。

エラー:「command :: MyCommandを見つけることができません」。

これは、ここでファイル

using System; 
using System.Collections.Generic; 
using System.Linq; using System.Net; 
using System.Windows; 
using System.Windows.Controls; 
using System.Windows.Documents; 
using System.Windows.Input; 
using System.Windows.Media; 
using System.Windows.Media.Animation; 
using System.Windows.Shapes; 
using Microsoft.Phone.Controls; 
using System.IO; 
using System.Windows.Media.Imaging; 
using System.Windows.Resources; 
using WP7CordovaClassLib.Cordova.Commands; 
namespace CSharpToJS 
{ 
public partial class MainPage : PhoneApplicationPage 
{ 
    // Constructor 
    public MainPage() 
    { 
     InitializeComponent(); 
    } 

    private void GapBrowser_Loaded(object sender, RoutedEventArgs e) 
    { 

    } 

} 
namespace WP7GapClassLib.PhoneGap.Commands 
{ 
    public class MyCommand : BaseCommand 
    { 
     public void DoThis(string args) 
     { 
      // TODO: 
     } 
    } 
} 
} 

の後ろに私のコードでは、私のindex.htmlファイルです:

<!DOCTYPE html> 
<html> 
<head> 
<meta name="viewport" content="width=device-width, height=device-height, initial- scale=1.0, maximum-scale=1.0, user-scalable=no;" /> 
<meta http-equiv="Content-type" content="text/html; charset=utf-8" /> 
<title>Cordova WP7</title> 
<link rel="stylesheet" href="master.css" type="text/css" media="screen" title="no title" charset="utf-8" /> 
<script type="text/javascript" charset="utf-8" src="cordova-1.5.0.js"></script> 
<script type="text/javascript"> 
    document.addEventListener("deviceready", onDeviceReady, false); 
    // once the device ready event fires, you can safely do your thing! -jm 
    function onDeviceReady() { 
     document.getElementById("welcomeMsg").innerHTML += "Cordova is ready! version=" + window.device.cordova; 
     console.log("onDeviceReady. You should see this message in Visual Studio's output window."); 
     var args = { "message": "whatever" }; 
     Cordova.exec(null, null, "MyCommand", "DoThis", args); 
    } 
    </script> 
</head> 
    <body> 
<h1> 
    Hello Cordova</h1> 
<div id="welcomeMsg"> 
</div> 
</body> 
</html> 
+2

JavaとJavascriptを混同しないでください:) –

答えて

1

あなたがplugin architecturePhoneGap.exec()方法を使用してこれを実現することができるはずです。

(あなたも、この特定の名前空間を使用する必要があります)BaseCommandから継承C#でクラスを作成します:JavaScriptから

namespace WP7GapClassLib.PhoneGap.Commands 
{ 
    public class MyCommand : BaseCommand 
    { 
     public void DoThis(string args) 
     { 
     // TODO: 
     } 
    } 
} 

コールこの方法:

var args = {"message":"whatever"};  
PhoneGap.exec(null, null, "MyCommand", "DoThis", args); 
+0

こんにちはJohansson、ありがとう、私は上記のコードを試しましたが、 "phonegapが定義されていません"のようなエラーが出ています。 –

+0

このコードを試してエラーが発生しました。上記のコードを私に説明してもらえますか?エラーが出ていますか?事前に感謝しています –

+0

正確な名前空間を使用しましたか? –

関連する問題