【问题标题】:How to embed Silverlight control in blog page?如何在博客页面中嵌入 Silverlight 控件?
【发布时间】:2010-02-02 15:49:19
【问题描述】:

如何在博客文章中嵌入使用 Silverlight 编写的演示小程序?是否可以使用任何托管的博客引擎,或仅使用我自己托管的博客引擎来做到这一点?

我假设我需要使用与带有 SL 控件的常规 (X)HTML 页面中相同的标签和 .js。是否有任何托管的博客引擎允许我输入此内容? (博主可以吗?)

SL 安全模型是否意味着 XAP 文件需要托管在与博客页面本身相同的站点上?

【问题讨论】:

    标签: silverlight blogs blogger


    【解决方案1】:

    您可以使用<object> 标记以 HTML 格式托管 Silverlight 应用程序,博客主机无需了解任何内容。托管 Silverlight 应用程序没有服务器端元素,它纯粹是客户端的事情。

    <object id="SL" data="data:application/x-silverlight-2," type="application/x-silverlight-2" style="width:400px; height:300px">
      <param name="source" value="MySLApp.xap" />
      <param name="minRuntimeVersion" value="3.0.40624.0 />
      <param name="initParams" value="someParam=value" />
      <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=3.0.40624.0" style="text-decoration: none;">
        <img src="http://go.microsoft.com/fwlink/?LinkId=108181" style="border-style: none" alt="Get Microsoft Silverlight" />
      </a>
    </object>
    

    在这种情况下,Silverlight 应用程序“MySLApp.xap”与使用它的 HTML 页面位于同一文件夹中。但是,如果您愿意,它可以在不同的服务器上。然而,对 HTML Bridge 的访问将被阻止,但如果您的应用程序是独立的并且不需要与主机页面通信,那么就没有问题。

    【讨论】:

    • Blogger 特有的问题:如果您按所示格式化对象标记,即使您使用的是“编辑 HTML”视图,Blogger 也可能会引入虚假的格式化选项卡。因此,对于 Blogger,您需要忽略好的样式并将整个块放在一行中。
    【解决方案2】:

    我创建了一个 Silverlight xap 来在我的 wordpress 主题中托管英雄图像或视频 - 我使用 initparams 和每个帖子的自定义字段将内容传递给它。

    这样我可以使用相同的 xap 来托管带有媒体控件的视频或带有酷淡入/点击效果的图像

    示例图片帖子:

    http://www.blackspike.com/site/html/display-google-docs-spreadsheets-in-wordpress

    示例视频帖子(点击视频查看控件):

    http://www.blackspike.com/site/wpf/hanselmans-babysmash

    两者都使用相同的 xap!

    【讨论】:

      【解决方案3】:

      一个对我有用的简单解决方案就是使用 iFrame。因此,我将 Visual Studio 生成的常规 TestPage.html 发布到我的网站(当然还有 .XAP 文件),然后将其嵌入:

      <iframe src="http://www.lostbearlabs.com/sl/Spring001/TestPage.html" frameborder="0" width="400" height="400" scrolling="no" ></iframe>
      

      使用 blogger,我发现了这个问题:任何使 HTML 漂亮的尝试(例如,通过将其拆分为单独的行)都会导致 blogger 在输出中插入虚假的&lt;br&gt; 标签,即使我使用“编辑”进行编辑HTML”视图。所以iFrame标签必须都在一行!!

      【讨论】:

        【解决方案4】:

        您可能想检查您的主机是否映射了所需的 MIME 类型:

        http://learn.iis.net/page.aspx/262/configuring-iis-for-silverlight-applications/

        根据这个 Server 2008 IIS7 应该可以开箱即用,但 IIS6 可能需要添加 MIME 类型...

        【讨论】:

          【解决方案5】:

          如果 HTML 页面和 Silverlight xap 文件托管在同一台服务器上,则上面标记为答案的解决方案效果很好。

          因为在大多数情况下这是不可能的,因为大多数博主都使用博主/WordPress。我们无法在这些托管服务提供商上设置 MIME 类型。

          这是一个很好的链接,详细解释了hosting an Silverlight application in blogger

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2016-10-01
            • 2011-02-21
            • 2012-09-04
            • 2012-04-18
            • 2022-12-25
            • 2017-07-26
            • 1970-01-01
            • 2010-09-18
            相关资源
            最近更新 更多