sharepoint2010 创建自定义列表
sharepoint2010 创建自定义列表
转:http://boke.25k5.com/kan77298.html
如何创建自定义列表
首先了解创建自定义列表中涉及到的几个名词:栏、内容类型。
①栏:栏即列、字段(Field),MSDN中给出的解释为:“字段”一词在 SharePoint Foundation 开发中有两个关系非常密切的含义。有时它指的是列表中的列,但如果提到单个列表项,“字段”一词g 8h"@的意思与“单元格”很接近,这里的单元格是表中某一列和某一行相交的部分。在一定程度上由于这一原因,“列”和“字段”在 SharePoint Foundation 开发中实际上是同义词。在 SharePoint Foundation 中,列不仅包含特定数据类型的数据,列本身也是一种类型,因为同一列可用于具有不同数据的多个列表。列可以保存在网站栏库中。通过编程或用户界面 (UI) 可将库中的网站栏添加到网站中的任何列表。通过编程或用户界面(例如,内容类型设计器)还可以将列添加到内容类型。
②内容类型:MSDN中给出的解释为:定义 SharePoint Foundation 列表或文档库中项目类别的元数据、工作流和行为。我的理解为:将多个栏组合起来描述某一类型的集合。比如我们想新建一个关于产品的内容类型,产品可能包含的属性:ID、名称、介绍等信息,那么我们g 8h"@可以将现有的栏库中得栏(如果没有需要新建栏)组合到一块构成一个内容类型。那么这个内容类型就可以用于多个地方,每次创建只需创建此内容类型的列表即可,而不需要创建自定义类型后编辑。
下面将介绍通过编程的方式创建自定义列表:
一、新建一个Sharepoint 2010 的空白项目
二、创建内容类型(ContentType):在资源管理器中项目上点击右键—>添加新建项,选择内容类型,将其命名为Product,点击添加;会出现一个向导,在向导中选择项目,点击完成。此时会创建如图一中标注的内容类型的新项。
图(一)
打开Product的Elements.xml,<span @font-family:courier="" new;="" 并新建如下代码:
- <?xml version="1.0" encoding="utf-8"?>
- <Elements xmlns="http://schemas.microsoft.com/sharepoint/">
- <Field SourceID="http://schemas.microsoft.com/sharepoint/v3"
- ID="{36819A9B-E748-47D5-9949-A65DD195BF80}"
- Name="ProductDescription"
- DisplayName="Product Description"
- Group="My Custom Columns"
- Type="Text"
- DisplaceOnUpgrade="TRUE"></Field>
- <Field SourceID="http://schemas.microsoft.com/sharepoint/v3"
- ID="{5CD2C0C1-67AC-4F9E-BF21-463CFEE9B382}"
- Name="ProductID"
- DisplayName="Product ID"
- Group="My Custom Columns"
- Type="Number"
- DisplaceOnUpgrade="TRUE"></Field>
- <!-- 父内容类g
- 8h"@型: 项目 (0x01) -->
- <ContentType ID="0x01001bc8deb250c04fa0bd7d541e4757c82a"
- Name="Product"
- Group="自定义内容类型"
- Description="我的内容类型"
- Inherits="TRUE"
- Version="0">
- <FieldRefs>
- <FieldRef ID="{5CD2C0C1-67AC-4F9E-BF21-463CFEE9B382}" Name="ID"/>
- <FieldRef ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" Name="Title" DisplayName="Product Name"/>
- <FieldRef ID="{36819A9B-E748-47D5-9949-A65DD195BF80}" Name="Description"/>
- </FieldRefs>
- </ContentType>
- </Elements>
代码中包含的元素如下:
- Elements:顶级元素
- Field:定义网站栏<g 8h"@="" div="">
- ContentType:定义单个内容类型
- FieldRefs:表示内容类型中包括的列引用的集合
- FieldRef:指定要在此内容类型中引用的列
下面主要介绍上述元素中(Field、ContentType、FieldRef)主要属性,其他属性请参见MSDN中介绍。
- <Field SourceID="http://schemas.microsoft.com/sharepoint/v3"
ID="{5CD2C0C1-67AC-4F9E-BF21-463CFEE9B382}"
Name="ProductID"
DisplayName="Product ID"
Group="My Custom Columns"
Type=g 8h"@"Number"
DisplaceOnUpgrade="TRUE"></Field>属性 说明 SourceID 可选属性,类型为 Text。包含定义字段的命名空间(如 http://schemas.microsoft.com/sharepoint/v3),或者在其中创建自定义字段的列表的 GUID。 ID 必需属性,类型为 Text。唯一标识字段。该值应是包含在括号 ({}) 内的 GUID 的字符串表示形式。 Name 必需属性,类型为 Text。字段的内部名称。该名称在列表或网站的字段集中必须为唯一。如有必要,SharePoint Foundation 会修改该值以保证其唯一性;否则,在字段g 8h"@定义的生命周期内,其不会更改。 DisplayName 可选属性,类型为 Text。字段的显示名称。没有空格使用限制。最大长度为 255 个字符。该值可以是格式为$Resources:String 的资源引用。该显示名称可由用户编辑并且可在初始字段创建后更改。该名称在字段显示在表视图中时用作栏标题,在字段显示在表单中时用作表单标签。 Group 可选属性,类型为 Text。指定字段所属的栏组。 Type 必需属性,类型为 Text。字段的数据类型 DisplaceOnUpgrade 可选属性,类型为 Boolean。如果字段已存在字段定义,则选择 TRUE 可强制使用该字段定义中指定的值更新字段属性。 - <ContentType ID="0x01001bc8deb250c04fa0bd7d541e4757c82a"
Name="Product"
Group="自定义内容类型"
Description="我的内容类型"
Inherits="TRUE"
Version="0"></ContentType>属性 说明 ID 必需属性,类型为g 8h"@ Text。指定内容类型的内容类型 ID。内容类型 ID 具有特定的格式。如果为ID 属性分配的值格式不正确,激活功能时将遇到错误。 Name 必需属性,类型为 Text。指定内容类型名称。该值可以为对$Resources:String 格式的资源的引用。名称本身的长度不能超过 128 个字符,并且不能包含 / : * ? " # % < > { } | ~ & 字符、两个连续的句点 (..) 或制表符等特殊字符。 如果添加内容类型的集合中存在另一个同名内容类型,则会出现错误。 Group 可选属性,类型为 Text。指定内容类型分配到的内容类型组。内容类型组是用户定g 8h"@的组,可帮助您将内容类型分组到逻辑类别中。该值可以为对$Resources:String 格式的资源的引用。 Description 可选属性,类型为 Text。提供要在 SharePoint Foundation 用户界面中显示的内容类型的说明。该值可以为对$Resources:String 格式的资源的引用。 Inherits 可选属性,类型为 Boolean。此属性的值确定创建时内容类型是否从其父内容类型继承字段。 Version 保留以供将来使用。 - <FieldRef ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" Name="Title" DisplayName="Product Name"/>
g 8h"@属性 说明 ID 必需属性,类型为 Text。指定此 FieldRef 元素引用的列的字段 ID。字段 ID 是 GUID 的字符串表示形式,包括大括号。值区分大小写。可以在位于以下路径的 fieldswss.xml 文件中查找内置字段的 ID:%ProgramFiles%Common FilesMicrosoft Sharedweb server extensions14TEMPLATEFEATURESfields。 Name 必需属性,类型为 Text。列的名称。这是列的内部名称,并且保证在字段定义的生存期内绝不会更改此名称。它相对于列表中的字段集必须是唯一的。 DisplayName 必需属性,类型为 Text。列的显示名称。最大长度为 255 个字符。
当字段在表视图中显示时,此属性的值将用作列标题;当字段在表单中显示时,此属性的值将用作表单g 8h"@标签。可以使用DisplayName 属性将显示名称更改为不同于在字段本身上定义的名称的值。
三、编写完内容类型后,创建列表定义。在资源管理器中右键项目—>添加新建项—>列表定义(ListDefinition),点击添加;此时会出现向导,将显示名称修改为ProductList,列表定义类型修改为自定义列表,保持为此列表定义添加列表实例的勾选状态,点击完成。会生成如图一中自定义列表中显示的结构。
在此结构中主要是对Schema.xml文件的编写,下面为此XML的编写后的完整代码:
- <?xml version="1.0" encoding="utf-8"?>
- <List xmlns:ows="Microsoft SharePoint" Title="ProductList" FolderCreation="FALSE" EnableContentTypes="TRUE"
- Direction="$Rg
- 8h"@esources:Direction;" Url="Lists/ListsAndSchemas-ProductList" BaseType="0"
- xmlns="http://schemas.microsoft.com/sharepoint/">
- <MetaData>
- <ContentTypes>
- <ContentTypeRef ID="0x01">
- <Folder TargetName="Item" />
- </ContentTypeRef>
- <ContentTypeRef ID="0x0120" />
- <ContentTypeRef ID="0x01001bc8deb250c04fa0bd7d541e4757c82a"></ContentTypeRef>
- </ContentTypes>
- <Fields>
- <Field ID="{5CD2C0C1-67AC-4F9E-BF21-463CFEE9B382}" Name="ID" DisplayName="Product ID" Type="Number"></Field>
- <Field ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" Name="Title" DisplayName="Product Name" Type="Text"></Field>
- <Field ID="{36819A9B-E748-47D5-9949-A65DD195BF80}" Name="Description" DisplayName="Product Descritpion&qug
- 8h"@ot; Type="Text"></Field>
- </Fields>
- <Views>
- <View BaseViewID="0" Type="HTML" MobileView="TRUE" TabularView="FALSE">
- <Toolbar Type="Standard" />
- <XslLink Default="TRUE">main.xsl</XslLink>
- <RowLimit Paged="TRUE">30</RowLimit>
- <ViewFields>
- <FieldRef Name="LinkTitleNoMenu"></FieldRef>
- <FieldRef ID="{36819A9B-E748-47D5-9949-A65DD195BF80}" Name="Descritpion" DisplayName="Product Description"></FieldRef>
- <FieldRef ID="{5CD2C0C1-67AC-4F9E-BF21-463CFEE9B382}" Name="ID" DisplayName="Product ID"></FieldRef>
- </ViewFields>
- <Query>
- <OrderBy>
- <FieldRef Name="Modified" Ascending="FALSE"></FieldRef>
- </OrderByg
- 8h"@>
- </Query>
- <ParameterBindings>
- <ParameterBinding Name="AddNewAnnouncement" Location="Resource(wss,addnewitem)" />
- <ParameterBinding Name="NoAnnouncements" Location="Resource(wss,noXinviewofY_LIST)" />
- <ParameterBinding Name="NoAnnouncementsHowTo" Location="Resource(wss,noXinviewofY_ONET_HOME)" />
- </ParameterBindings>
- </View>
- <View BaseViewID="1" Type="HTML" WebPartZoneID="Main" DisplayName="$Resources:core,objectiv_schema_mwsidcamlidC24;" DefaultView="TRUE" MobileView="TRUE" MobileDefaultView="TRUE" SetupPath="pagesviewpage.aspx" ImageUrl="/_layouts/images/generic.png" Url="AllItems.aspx">
- <Toolbar Type="Standard" />
- <XslLink Default="TRUE">main.xsl</XslLink>
- <RowLimit Pagg
- 8h"@ed="TRUE">30</RowLimit>
- <ViewFields>
- <FieldRef Name="Attachments"></FieldRef>
- <FieldRef Name="LinkTitle"></FieldRef>
- <FieldRef ID="{5CD2C0C1-67AC-4F9E-BF21-463CFEE9B382}" Name="ID" DisplayName="Product ID"></FieldRef>
- <FieldRef ID="{36819A9B-E748-47D5-9949-A65DD195BF80}" Name="Descritpion" DisplayName="Product Description"></FieldRef>
- </ViewFields>
- <Query>
- <OrderBy>
- <FieldRef Name="ID"></FieldRef>
- </OrderBy>
- </Query>
- <ParameterBindings>
- <ParameterBinding Name="NoAnnouncements" Location="Resource(wss,noXinviewofY_LIST)" />
- <ParameterBinding Name="NoAnnouncementsHowTo" Location="Resource(wss,noXinviewofY_DEFAULT)" />
- g
- 8h"@ </ParameterBindings>
- </View>
- </Views>
- <Forms>
- <Form Type="DisplayForm" Url="DispForm.aspx" SetupPath="pagesform.aspx" WebPartZoneID="Main" />
- <Form Type="EditForm" Url="EditForm.aspx" SetupPath="pagesform.aspx" WebPartZoneID="Main" />
- <Form Type="NewForm" Url="NewForm.aspx" SetupPath="pagesform.aspx" WebPartZoneID="Main" />
- </Forms>
- </MetaData>
- </List>
我们在此文档中添加的内容为:
- 在ContentTypes元素中添加<ContentTypeRef ID="0x01001bc8deb250c04fa0bd7d541e4757c82a"></ContentTypeRef>,此处的ID必须与第二部中创建的内容模板中得ContentType的ID相同。
- 添加Fields集合元素
<Fields>
<Field ID="{5CD2C0C1-67AC-4F9E-BF21-463CFEE9B382}" Name=&qug 8h"@ot;ID" DisplayName="Product ID" Type="Number"></Field>
<Field ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" Name="Title" DisplayName="Product Name" Type="Text"></Field>
<Field ID="{36819A9B-E748-47D5-9949-A65DD195BF80}" Name="Description" DisplayName="Product Descritpion" Type="Text"></Field>
< /Fields>
此元素中得ID也必须与第二步中创建的ID相同。此处定义的为此列表中包含的列。 - 在两个Views元素中得ViewFields元素中添加
<FieldRef ID="{5CD2C0C1-67AC-4F9E-BF21-463CFEE9B382}" Name="ID" DisplayName="Product ID"></FieldRef>
< FieldRef ID="{36819A9B-E748-47D5-9949-A65DD195BF80}" Name="Descritpion" DisplayName="Product Description"></FieldRef>
g 8h"@
四、部署此项目,刷新网站即可看到我们自定义的列表;在网站设置中得,网站栏、网站内容类型也可以看到我们新建的栏和内容类型。
转载于:https://www.cnblogs.com/ningang/p/4302101.html
sharepoint2010 创建自定义列表相关推荐
- SharePoint 2013开发入门探索(一)- 自定义列表
在SharePoint 2013中创建自定义列表的方式有很多,在网站内容页面添加应用程序就可以创建(站点内容-〉 您的应用程序),也可以通过SharePoint Designer 2013创建,而本文 ...
- excel自定义排序出错_使用Excel自定义列表按您的方式进行排序
excel自定义排序出错 You know how to sort an Excel list alphabetically, and with Excel 2007 you can even sor ...
- 为 ASP.NET Datagrid 创建自定义列
Marcie Robillard DatagridGirl.com 2003 年 9 月 简介 不得不承认,为 Microsoft® ASP.NET 编写 Datagrid 代码包括大量的重复工作.尽 ...
- e0312 不存在用户定义的_VistaPro创建自定义变量
IESVE软件中VistaPro模块中的结果变量众多,很多用户反应变量数据不容易获得,其实在此模块中用户可以根据现有变量(天气数据.房间设置和负荷.建筑负荷.能源.碳排放)进行组合,利用VE软件自带的 ...
- [转]利用ASP.NET 2.0创建自定义Web控件(1)
原址:http://hi.baidu.com/sjbh/blog/item/cc58fd1bd35d3ad2ad6e7593.html 简介 从使用基本的文本编辑器到创作标记页面,Web 开发已经 ...
- ASP.NET Core 配置 - 创建自定义配置提供程序
ASP.NET Core 配置 - 创建自定义配置提供程序 在本文中,我们将创建一个自定义配置提供程序,从数据库读取我们的配置.我们已经了解了默认配置提供程序的工作方式,现在我们将实现我们自己的自定义 ...
- 使用 .NET Core模板引擎创建自定义的模板和项目
本文要点 .NET CLI 包含了一个模板引擎,它可以直接利用命令行创建新项目和项目项.这就是"dotnet new"命令. 默认模板集涵盖了默认控制台和基于 ASP.NET 的应 ...
- draft.js_如何使用快捷方式在Draft.js中创建有序列表和无序列表
draft.js by Andrey Semin 通过安德烈·塞米(Andrey Semin) 如何使用快捷方式在Draft.js中创建有序列表和无序列表 (How to create ordered ...
- 只需12 个步骤,就能在AWS中创建自定义VPC,用过都惊了!
作者| Kunal Yadav 译者 | 天道酬勤 责编| 徐威龙 封图| CSDN下载于视觉中国 在本文中,作者将创建一个具有公共子网和私有子网的自定义VPC.每个子网中都有一个EC2实例(已安装W ...
最新文章
- linux终端vi退出命令,如何从命令行关闭vim?
- python做乘法运算定律_最新乘法运算定律专项练习题
- plupload+artdialog实现多平台文件上传
- 生成式模型和判别式模型(转)
- 初一模拟赛总结(5.11)
- Mybatis高级应用 整合Ehcache
- 2021大同高考成绩查询,大同高考分数查询(查询方法+入口)
- express-urlrewrite express url重写
- kindeditor上传图片php,kindeditor上传图片与上传文件js
- FTP上传失败报错227 Entering Passive Model (222,111,8,111,10,40)
- 2021届校招求职计划、总结
- 开源天气时钟项目删减和更新
- Incorrect string value: ‘\xF0\x9F\x91\x82‘ for column ‘address‘ at row 1
- TheTechBehindDx11UnrealEngineSamaritanDemo
- Oracle常見問題查詢
- 支持向量机 二 :非线性支持向量机
- 《Python自然语言处理(第二版)-Steven Bird等》学习笔记:第02章 获得文本语料和词汇资源
- C语言中,头文件和源文件的关系(转)
- Android中IDA分析TexturePacker加密资源寻找加密Key
- uni-app 打包H5项目
热门文章
- 利用自己的电脑设置web服务器建网站_win7系统篇,win7系统利用iis搭建web服务器实现信息浏览资源共享的操作方法...
- pyqt 槽任意参数_PyQt5快速入门(二)PyQt5信号槽机制
- opporeno3详细参数_vivox30和opporeno3哪个好 vivox30和opporeno3对比评测
- inotify java maven_INOTIFY 系列(一) 安装 和初步使用
- linux 双网卡绑定模式,双网卡绑定的模式及操作步骤
- djc加密数字货币_中国银行原副行长: quot;网络加密币quot;难以成为货币,央行数字货币只能是法定货币的数字化...
- 用php实现一个简易的web表单生成器,PHP—Web表单生成器
- Java数据结构与算法:栈
- BAT无线工程师面试流程详细解析
- Photoshop CC2015软件安装资料及教程