San*_*ile 7 javascript c# translation
我正在尝试使用 Winforms 执行 JavaScript,我想从 JavaScript 代码中获取文本。我需要使用 Google Translator 服务翻译几行。遇到了这个不错的 javascript 代码,它可以翻译给定的消息并将其显示在警报框中。
<html>
<head>
<script type='text/javascript' src='http://www.google.com/jsapi'></script>
<script type='text/javascript'>
google.load('language','1');
function init () {
google.language.translate('How are you?', 'en', 'es', function (translated) {
alert(translated.translation);
});
}
google.setOnLoadCallback(init);
</script>
</head>
<body>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
有什么方法可以让我传递任何字符串而不是“你好吗?” & 如果我可以var在 C# winfrom 上下文中获取翻译的文本(从警报框或使用任何)。
好的,我做了一些研究。所以在你的表单中添加一个 webbrowser,然后我敢打赌这对你有用:
public Form1()
{
InitializeComponent();
webBrowser1.ObjectForScripting = new MyScript();
}
private void Form1_Load(object sender, EventArgs e)
{
string myTranslatedText = "Hello, how are you?";
webBrowser1.DocumentText = @"
<html>
<head>
<script type='text/javascript' src='http://www.google.com/jsapi'></script>
<script type='text/javascript'>
google.load('language','1');
function init () {
google.language.translate('" + myTranslatedText + @"', 'en', 'es', function (translated) {
window.external.CallServerSideCode(translated.translation);
});
}
google.setOnLoadCallback(init);
</script>
</head>
<body>
</body>
</html>";
}
[ComVisible(true)]
public class MyScript
{
public void CallServerSideCode(string myResponse)
{
Console.WriteLine(myResponse); //do stuff with response
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8347 次 |
| 最近记录: |