【问题标题】:How do I integrate a Silverlight DataGrid into an ASP.NET MVC View?如何将 Silverlight DataGrid 集成到 ASP.NET MVC 视图中?
【发布时间】:2011-03-26 05:33:27
【问题描述】:

我是 Silverlight 的新手,我用它创建了一个简单的数据网格,我想将它作为 ASP.NET MVC 视图中的视图的一部分包含在内(同时使用现有的母版页布局)。

最好的方法是什么?我找不到任何例子......

【问题讨论】:

    标签: asp.net-mvc silverlight datagrid


    【解决方案1】:

    您只需将包含您的网格的 Silverlight 应用程序嵌入到您的 MVC 视图标记中。当然,ASP.NET MVC 只是输出 HTML,所以在基本级别上,您所做的只是将 HTML 对象标记添加到将加载您的 Silverlight .xap 文件的页面标记。

    例如

    <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
              <param name="source" value="MySilverlightApplication.xap"/>
              <param name="background" value="white" />
              <param name="minRuntimeVersion" value="4.0.50401.0" />
              <param name="autoUpgrade" value="true" />
              <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50401.0" style="text-decoration:none">
                  <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/>
              </a>
            </object>
    

    一个可能更棘手的问题是如何将数据加载到 Silverlight 网格控件中,这当然取决于数据的来源。通常,数据将通过调用 WCF Web 服务加载到您的 Silverlight 控件中。

    【讨论】:

    • 感谢史蒂夫的快速回复!我已经完成了这个并更新了源等,但它似乎没有在面板中执行 Silverlight 应用程序。有什么我想念的吗?对不起,菜鸟问题:P
    • 首先,您需要确保在对象标记的“源”元素中引用的 xap 文件可用并部署在您站点的目录中 - 在 Visual Studio 2010 中,您可以通过网站的属性对话框 - 属性中有一个 Silverlight 应用程序部分,您可以在其中选择作为当前解决方案一部分的 Silverlight 应用程序,以便在构建项目时自动复制到 Web 目录结构。然后你需要确保你的对象标签的“源”值指向这个 xap 文件。
    • 所有这些似乎都已正确设置,Silverlight 应用程序的独立测试页面工作正常,还有其他想法吗?再次感谢!
    • 糟糕!在 VS2010 中,我需要源是完整路径,即 value="/ClientBin/MySilverlightApplication.xap" 干杯史蒂夫 :)
    【解决方案2】:

    只需通过通常的标签包含 Silverlight 应用程序,就足以将其包含在您的视图中。

    您是否在询问如何将其“连接”到您的数据?这更复杂,因为 Silverlight 对象独立运行,并且无法访问 ViewModel 中的任何数据。

    如果你需要传递一些初始化参数,最简单的方法是通过对象上的“initParam”标签传递它们:

    <param name="initParams" value="your information here" />
    

    或者,您可以从 Silverlight 应用程序中访问查询字符串。无论哪种方式,如果您需要大量信息,您应该考虑通过 Web 服务公开这些信息,然后您的 Silverlight 应用程序可以查询。

    【讨论】:

    • 谢谢 Gareth,但我还不打算将它“连接”到数据库 - 我会在跑步前尝试步行!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-31
    • 2013-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-16
    相关资源
    最近更新 更多