65.9K
CodeProject 正在变化。 阅读更多。
Home

Flash 电影字段 (SharePoint 2010)

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.50/5 (4投票s)

2010年4月30日

CPOL

3分钟阅读

viewsIcon

52997

downloadIcon

954

自定义 Flash 电影字段以渲染 Flash 电影

Figure 1

图 1

Figure 2

图 2

引言

Flash 电影字段是一个自定义字段,用于在 SharePoint 2010 中渲染 Flash 电影和 YouTube 视频。 它使用出色的 swfobject 来渲染 HTML 和 JavaScript,以实现最大的浏览器兼容性。 在编辑模式下,作者指定 Flash 电影的 UrlWidthHeight。 通过修改附加的源代码,可以轻松添加可选参数。

这改编自我的 WSS 3.0 版本,用于 SharePoint 2010。

描述

Flash 电影字段基于新的字段类型 SPFieldFlashMovie。 它具有以下属性或列值

  • Url - Flash (.swf) 电影或 YouTube 视频的 URL,例如 /media/map.swf, http://www.youtube.com/v/dMH0bHeiRNg&hl=en&fs=1
  • Width - Flash 电影或 YouTube 视频的宽度(以像素为单位)。对于 YouTube 视频,宽度包括嵌入式播放器。
  • Height - Flash 电影或 YouTube 视频的高度(以像素为单位)。对于 YouTube 视频,高度包括嵌入式播放器。

渲染由自定义字段控件 FlashMovieField 提供,并关联渲染模板 QuestechFlashMovieFieldTemplate。 所有 UI 字符串都已本地化并存储在资源文件中。

  • \ClientScripts\swfobject.js
    支持 swfobject 的 JavaScript 文件。 设置为嵌入式资源。
  • \ControlTemplates\QuestechFlashMovieFieldTemplate.ascx
    FlashMovieField 的表单编辑视图,带有 RenderingTemplate 控件。
  • \Fields\SPFieldFlashMovie.cs
    自定义 Flash 电影字段的字段类型。 继承自 SPFieldMultiColumn
  • \Fields\SPFieldFlashMovieValue.cs
    SPFieldFlashMovie 的列值类。 继承自 SPFieldMultiColumnValue
  • \Resources\QuestechCoreFlashMovie.resx
    WSS 预置资源文件和应用程序运行时资源文件,用于本地化的 UI 字符串。 这设置了自定义字段的显示名称以及在创作期间属性 UrlWidthHeight 的标签字符串。 部署到 ..\14\Resources\.
  • \WebControls\FlashMovieField.cs
    SPFieldFlashMovie 的字段控件。 使用 swfobject 2.2 渲染 Flash 电影和 YouTube 视频。
  • \XML\fldtypes_SPFieldFlashMovie.xml
    字段类型 SPFieldFlashMovie 的字段类型定义。
  • \Resource.resx
    项目资源文件,用于本地化的 UI 字符串。
  • \Utility.cs
    用于常用方法和属性的实用程序文件。

示例 Visual Studio 2010 解决方案包含构建和部署自定义字段所需的所有支持文件,除了强命名密钥文件 (key.snk)。 它充分利用了内置的 SharePoint 集成。 无需更多第三方工具或自定义构建前和构建后脚本即可构建 SharePoint 解决方案文件。 

安装

要部署自定义字段,请按照以下步骤操作

  1. 打开 SharePoint 2010 管理 Shell,使用 Add-SPSolution 添加解决方案文件 QuestechFlashMovie.wsp,例如
    Add-SPSolution "C:\QuestechSystems.FlashMovie\bin\Release\QuestechFlashMovie.wsp"

    或者使用 stsadm,添加解决方案文件 QuestechFlashMovie.wsp,例如

    stsadm -o addsolution 
        -filename "C:\QuestechSystems.FlashMovie\bin\Release\QuestechFlashMovie.wsp"
  2. 打开 SharePoint 2010 Central Administration,转到 System Settings/Manage farm solutions。 将 QuestechFlashMovie.wsp 部署到选择的 Web 应用程序。
  3. 转到所选 Web 应用程序中的顶级网站。 激活网站集功能 Questech Systems Flash Movie Columns

自定义 Flash 电影字段现在应该可以使用了。 您可以转到“网站栏”库进行验证。 要在您的 SharePoint 页面中使用自定义字段,您首先需要通过转到“网站内容类型”库将自定义网站栏添加到内容类型。 在库列表中,选择一个内容类型,然后单击“从现有网站栏添加”。

在您的页面布局文件中,修改代码如下

...
<%@ Register Tagprefix="QuestechWebControls" 
    Namespace="QuestechSystems.SharePoint.WebControls"
    Assembly="QuestechSystems.SharePoint.FlashMovie, Version=1.0.0.0, 
    Culture=neutral, PublicKeyToken=f268fd4f0f42524c" %>

...
...
<QuestechWebControls:FlashMovieField FieldName="FlashMovieFile" runat="server" />
...
© . All rights reserved.