silverlight - 使 Silverlight 应用程序插件能够使用

标签 silverlight plugins

我想了解将内容动态加载到 Silverlight 应用程序中的一般方法。
更具体地说,我想创建类似基于小部件的应用程序,其中所有 GUI 对象都是小的独立小部件。我想提供一个静态 chrome,比如一个框架,托管实际的小部件,它是从网站等外部源加载的,或者由用户上传并显示在这个框架中。

问题是:

  • 为了让我将他的小部件应用程序加载到我的应用程序中,小部件作者必须特别提供什么?我想我必须在提供的 DLL 中查询 ViewModel 及其 DataTemplate、UserControl 甚至 XAP 文件之类的东西。最好的方法是什么?外部小部件也应该实现一定的接口(interface),以便外部应用程序可以在其上调用诸如Loaded和Unloaded之类的方法。
    小代码示例将不胜感激。
  • 安全呢?如何防止内部小部件应用程序访问我的外部应用程序。我认为小部件应用程序可以上升到控件树或访问我的框架控件的 DataContext,托管应用程序。这是一个问题吗?如果是这样,如何解决?

  • 提前致谢!
    安德烈

    最佳答案

    您可以从小部件作者可以提供的 dll 中动态加载控件,MS 的 Mike Taulty's done a walkthrough .

    微软也有Prism它允许您以模块化方式分解您的 silverlight 代码。我还没有尝试过它是否适合加载单个控件,但我对我所读到的内容的印象似乎表明它有一个框架可以做到这一点。

    至于安全性,他们可以访问应用程序的其余部分,所以这可能不合适。

    关于silverlight - 使 Silverlight 应用程序插件能够使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1105590/

    相关文章:

    c# - 无法以编程方式安装 OOB SL5

    用于快速编辑命令行参数的 Eclipse 插件/ View

    c# - 更新应用程序时的 WP7 隔离存储

    SilverlightSpy替代工具

    templates - 如何在字段插件中对相同的类使用自定义模板,grails

    docker - 如何向 docker jenkins 添加插件?

    java - 奇怪的问题 - Glassfish 3.1.1 Server 和 Eclipse Indigo

    JQuery:FullCalendar 插件:事件不显示在周 View 和日 View 中,但显示在月 View 中

    asp.net - Facebook 游戏开发 - .NET - 哪种架构?

    silverlight - 获取 "An entity with the same identity already exists in this EntitySet"但 EntitySet 为空