window.external.notify传递除string之外的数据

时间:2011-12-06 20:29:17

标签: c# windows-phone-7 delegates function-pointers window.external

我正在尝试编写一个Windows Phone应用程序,并且我想在用户想要执行操作时调用委托。但问题是必须在网页中执行操作,并且必须在应用内处理事件。我知道这不是一个完美的设计,但我正在努力探索修改从web浏览器控件传递回应用程序的数据的方法。

这是我的问题,

        +---------------------------------------------+
        | Inside App (C# Code Behind)                 |
        |         App Data.                           |
        |                                             |
        |   Delegate that handles the event.          |
        |      ^       +----------------------+       |
        |      |       |Webbrowser Control    |       |
        |      +       |                      |       |
        |      |       |                      |       |
        |      +------------+Action Performed |       |
        |              |   (HTML Control)             |
        |              |                      |       |
        |              |                      |       |
        |              +----------------------+       |
        |                                             |
        |                                             |
        +---------------------------------------------+

我目前正在使用window.external.notify(somestrings)并使用反射来调用后面代码中的方法。除了传递字符串之外,我可以传递一个通用的Object,它传递给C#代码,以后可以将其类型转换为委托对象,然后可以调用它吗?

如果不是代表,我可以通过传递函数的名称来调用后面代码(C#)中app的一部分吗?

1 个答案:

答案 0 :(得分:1)

只能通过Notify()方法传递字符串。

您可以尝试调用通过反射传递的方法名称。或者,如果您知道可以在设计时调用的方法,则可以将您在代码中翻译的值传递给您所使用的方法。