#Windows Phone:在HTML5专案中,如何从Javascript传送字串到C#的APP端

原文:#Windows Phone:在HTML5专案中,如何从Javascript传送字串到C#的APP端

#Windows Phone:在HTML5专案中,如何从Javascript传送字串到C#的APP端

2013/11/29 02:50 |
閱讀數 : 505
|

我要推薦

|
Add Comment

| 文章分類 :

APP

HTML5

Windows Phone

|
訂閱



在開發Windows Phone APP的HTML5專案中,究竟該如何從Javascript傳給APP的C#程式碼中呢?現在就讓我來介紹一下吧!

使Javascript能與APP的C#程式碼溝通

首先先對嵌入至HTML5專案中的瀏覽器加上當觸發ScriptNotify事件時處理的函式,Javascript可藉此觸發ScriptNotify事件將字串傳給APP使用。在此範例裡,設定當Javascript傳字串過來時,就使用MessageBox.Show將字串顯示出來。

private void Browser_Loaded(object sender, RoutedEventArgs e)
{
  Browser.IsScriptEnabled = true;
  Browser.ScriptNotify += HTML_Script_Launched;
  // 在此加入您的 URL
  Browser.Navigate(new Uri(MainUri, UriKind.Relative));
}

private void HTML_Script_Launched(object sender, NotifyEventArgs e)
{
  MessageBox.Show(e.Value);
}

註:亦可直接從xaml中增加。<phone:WebBrowser x:Name="Browser" ScriptNotify="HTML_Script_Launched" />

接著只要在Javascript端,呼叫window.external.notify函式並傳值即可。

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <link rel="stylesheet" type="text/css" href="/html/css/phone.css" />
    <title>Windows Phone</title>
    <script>
      window.external.notify("Hello World!");
    </script>
  </head>
  <body>
    <div>
      <p>我的應用程式</p>
    </div>
    <div id="page-title">
      <p>頁面標題</p>
    </div>
  </body>
</html>

這樣就可以了!底下是結果:
csjs03.png

參考資料

  1. Getting Started With Windows Phone 8 HTML5 Apps:http://blogs.msdn.com/b/matthiasshapiro/archive/2013/02/15/getting-started-with-windows-phone-8-html5-apps.aspx

DotBlogs Tags:

APP

HTML5

Windows Phone

關連文章

  • #Windows Phone:安裝Windows Phone SDK 8.0流程
  • #Monogame:在Windows 8 APP專案中,判斷Snap View的狀態
  • #Windows Phone:在HTML5專案中,如何從C#執行網頁的Javascript程式
  • #APP:[龜兔賽跑棋]於Windows Store上架
时间: 2024-09-20 18:33:47

#Windows Phone:在HTML5专案中,如何从Javascript传送字串到C#的APP端的相关文章

java-求字符串中相同最长的字串

问题描述 求字符串中相同最长的字串 用java程序写 题目:输入一行字母组成的字符串,找出其中出现的相同且 长度最长的字符串,输出它及其首字符的位置. 如yyabrdabjcabreg,则输出为abr,3.异常情况输出-1 解决方案 /** * 思路:"abdab" 拆分情况:1.ab abd abda abdab 2.bd bda bdab 3 da dab 4 ab 5 b * * @param str * @return */ public static String find(

Inno Setup:获取isl中的多国语言字串

原文 http://zwkufo.blog.163.com/blog/static/25882512010101041626803/?suggestedreading&wumii 用InnoSetup做安装包的时候,在iss文件中写[Code]经常会用MessageBox,像是这样: [Code]function InitializeSetup(): boolean;begin  if MsgBox('确定安装Eee Docking?', mbInformation, MB_OKCancel) 

C# 隐藏 Windows Phone 侦错模式中萤幕右上角的数据条(模拟器、实机可用),截图好方便。

原文:C# 隐藏 Windows Phone 侦错模式中萤幕右上角的数据条(模拟器.实机可用),截图好方便. 一般我们在开发Windows Phone App时,会使用模拟器或是实体的手机开发,在Visual Studio 开发下不论是使用[Release]或是[Debug]执行时,模拟器跟实体手机右上角都会出现数据栏( 官方文件称 : Frame rate counters ),这些数据栏可以帮主开发者知道APP的使用状况,Whatever,若我们开发的APP非常简单的功能,并不会涉及[Out

漏洞描述 大家都知道,在安装Windows 2000简体中文版的过程中,默认情况下同时安装了各种简体

相信现在有很多朋友和我一样在使用Windows 2000操作系统,与其他的Windows版本一样,如果Windows 2000系统中装的东西太多,每次启动都要花掉不少时间,真是急死我等.那我们就清除掉一些不必要的自启动程序,同时也让系统减少自检的时间,这样就可以缩短系统启动的时间了. 1.用好Msconfig命令.Windows 98下的"系统配置实用程序(Msconfig)"是一个非常好用的工具,通过它可以很轻松地删除或暂时停止某些自启动程序,但Windows 2000却将它抛弃了,

在 Windows 应用商店应用程序中导航的基础知识

确保用户能够随时快速而轻松地访问所需内容是任何新型应用程序的一个必不可少的特征 .这意味着,在用户需要进行导航之前,导航方式不得干扰用户操作,并且不得强制用户做 出难以逆转的选择.这是一种称为"内容在版式上方"的 UI 设计技术.强制实施此设计模 式的最佳方法是将大多数导航直接置入到内容中.可以在 Windows 应用商店应用程序中轻松 实现这一点,因为它们遵循此导航设计原则. Windows 应用商店应用程序导航概述 在 Windows 应用商店应用程序中,开发人员将导航置入到内容中

Mac OS X与Windows 8双启动环境中创建Windows扩展分区

用了四年多的Thinkpad突然坏了,咬了咬牙,买了台MacBook,使用下来的感 受是帅呆了,不想回到Windows.但Mac下没有Visual Studio的替代品,只能再 装一个Windows 8. 借助Boot Camp安装了Windows 8,但当时只为 Windows 8分了一个区.后来想拉出一个分区出来专门放数据,于是在Windows 8 的"磁盘管理"中收缩(Shrink)C盘,拉出了一部分空间.接着创建分区时, 出现如下错误: The operation you se

用C#读取Windows注册表中的多重字串和二进制字串

注册表中有多种数据存放的格式,有几种常见不能直接读出的格式.下面列出了2个方法,分别是读取WindowsXP注册表中的REG_MULTI_SZ( 多重字串)和REG_BINARY(二进制值)的方法. //读取Windows安装盘目录 //Installation Sources是个REG_MULTI_SZ:多重字串,直接转string读不出 string[] key = (string[])Registry.LocalMachine.OpenSubKey( @"SOFTWAREMicrosoft

Windows 8预览版中如何添加Windows Media Center

教程为大家介绍如何在Windows 8预览版中添加Windows Media Center. 很多用户都在Windows 8预览版中寻找Windows Media Center,但无济于事.事实证明,Windows Media Center并没有预装在Windows 8预览版当中.然而,现在有一个办法能让你在Windows 8中添加 Windows Media Center.据微软称,在屏幕的右边缘或将鼠标光标停在屏幕的右上角,点击"搜索",然后搜索"附加功能",再

HTML5 Canvas中使用路径描画二阶、三阶贝塞尔曲线

  在HTML5 Canvas中,可以用以下方法描画三阶和二阶的贝塞尔曲线: 代码如下: context.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y) context.quadraticCurveTo(cpx, cpy, x, y) 贝塞尔曲线是在二维平面上由一个"起始点",一个"结束点",以及一个或多个"控制点"定义的曲线.普通的三阶贝塞尔曲线使用两个控制点,而二阶曲线则只使用一个控制点. 要描画二阶贝