SPFieldCollection 类

表示SPField对象的集合。

继承层次结构

System.Object
  Microsoft.SharePoint.Administration.SPAutoSerializingObject
    Microsoft.SharePoint.SPBaseCollection
      Microsoft.SharePoint.SPFieldCollection

命名空间:  Microsoft.SharePoint
程序集:  Microsoft.SharePoint(位于 Microsoft.SharePoint.dll 中)

语法

声明
Public Class SPFieldCollection _
    Inherits SPBaseCollection
用法
Dim instance As SPFieldCollection
public class SPFieldCollection : SPBaseCollection

备注

使用SPList类或SPListItem类的Fields属性返回的字段的列表或列表项的集合。使用SPWeb类的Fields属性返回的字段在网站中,并使用SPContentType类的Fields属性来获取与内容类型相关联的字段。若要创建一个字段,请使用Add方法。

使用索引器从集合中返回单个字段。例如,假设已分配给名为collFields的变量集合,使用collFields[index]在 C# 中或在 Visual Basic,其中index是集合中的字段的索引号,或者字段的显示名称collFields(index) 。

示例

下面的代码示例将一个新的文本字段添加到显示在列表的默认视图中指定网站的通知列表。

Dim webSite As SPWeb = SPContext.Current.Site.AllWebs("MySite")
Try
    Dim list As SPList = webSite.GetList("Lists/Announcements/AllItems.aspx")
    Dim fields As SPFieldCollection = list.Fields

    Dim newFieldName As String = fields.Add("MyNewField", SPFieldType.Text, False)

    Dim fieldAdd As SPField = fields.GetField(newFieldName)

    Dim view As SPView = list.DefaultView
    Dim viewFields As SPViewFieldCollection = view.ViewFields
    viewFields.Add(fieldAdd)
    view.Update()
Finally
    webSite.Dispose()
End Try
using (SPWeb oWebsite = SPContext.Current.Site.AllWebs["MySite"])
{
    SPList oList = oWebsite.GetList("Lists/Announcements/AllItems.aspx");
    SPFieldCollection collFields = oList.Fields;

    string strNewFieldName = collFields.Add("MyNewField", SPFieldType.Text, false);
    SPField oField = collFields.GetField(strNewFieldName);

    SPView oView = oList.DefaultView;
    SPViewFieldCollection collViewFields = oView.ViewFields;
    collViewFields.Add(oField);
    oView.Update();
}

备注

某些对象实现IDisposable接口,并必须避免后不再需要保留这些对象在内存中。好的编码做法有关的信息,请参阅Disposing Objects

线程安全性

该类型的任何公共 静态 (已共享 在 Visual Basic 中) 成员都是线程安全的。不保证任何实例成员都是线程安全的。

另请参阅

引用

SPFieldCollection 成员

Microsoft.SharePoint 命名空间