【发布时间】:2011-03-26 05:33:27
【问题描述】:
我是 Silverlight 的新手,我用它创建了一个简单的数据网格,我想将它作为 ASP.NET MVC 视图中的视图的一部分包含在内(同时使用现有的母版页布局)。
最好的方法是什么?我找不到任何例子......
【问题讨论】:
标签: asp.net-mvc silverlight datagrid
我是 Silverlight 的新手,我用它创建了一个简单的数据网格,我想将它作为 ASP.NET MVC 视图中的视图的一部分包含在内(同时使用现有的母版页布局)。
最好的方法是什么?我找不到任何例子......
【问题讨论】:
标签: asp.net-mvc silverlight datagrid
您只需将包含您的网格的 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 应用程序,就足以将其包含在您的视图中。
您是否在询问如何将其“连接”到您的数据?这更复杂,因为 Silverlight 对象独立运行,并且无法访问 ViewModel 中的任何数据。
如果你需要传递一些初始化参数,最简单的方法是通过对象上的“initParam”标签传递它们:
<param name="initParams" value="your information here" />
或者,您可以从 Silverlight 应用程序中访问查询字符串。无论哪种方式,如果您需要大量信息,您应该考虑通过 Web 服务公开这些信息,然后您的 Silverlight 应用程序可以查询。
【讨论】: