日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

sharepoint2010 创建自定义列表

發布時間:2025/4/16 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sharepoint2010 创建自定义列表 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

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;="" 并新建如下代碼:

[html]?view plaincopy
  • <?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的編寫后的完整代碼:

    [html]?view plaincopy
  • <?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 创建自定义列表的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。