如何通过CAML配置将Listview添加到发布页面

时间:2011-08-09 12:04:02

标签: sharepoint provisioning caml

这是一个很长的问题,现在我正面临着...... 我必须通过CAML添加列表视图Web部件来发布页面。 我使用过代码:

<View List="0GeneralInformationandReports" RowLimit="5" FreeForm="TRUE" 
  BaseViewID="0"
  RecurrenceRowset="TRUE"
  WebPartZoneID="bottomLeft_LeftZone"
  WebPartOrder="1">
    <![CDATA[
         <webParts>
              <webPart xmlns="http://schemas.microsoft.com/WebPart/v3">
                  <metaData>
                      <type name="Microsoft.SharePoint.WebPartPages.XsltListViewWebPart,Microsoft.SharePoint,Version=14.0.0.0,Culture=neutral,PublicKeyToken=71e9bce111e9429c" />
                      <importErrorMessage>Cannot import this Web Part.</importErrorMessage>
                  </metaData>
                  <data>
                      <properties>
                          <property name="Title">0 - General Information and Reports</property>
                          <property name="AllowConnect" type="bool">True</property>
                          <property name="AllowClose" type="bool">False</property>
                          <property name="Height" type="unit">215px</property>
                      </properties>
                  </data>
              </webPart>
          </webParts>          
    ]]>
  </View>

并且页面上的列表视图正常呈现。但我必须添加更多控件到Web部分,如show only limited列和前5个按日期升序修改。这不能使用标签,因为我没有其他方法可以添加排序,查看字段等... 请帮忙。


我已经尝试过但仍无法正常工作。这是schema.xml中的列表视图。

<View DisplayName="" BaseViewID="0" Type="HTML" MobileView="TRUE" ImageUrl="/_layouts/images/dlicon.png" Hidden="TRUE" XslLink="main.xsl"
        WebPartZoneID="bottomLeft_LeftZone" WebPartOrder="0">
    <XslLink>main.xsl</XslLink>
    <Query />
    <ViewFields>
      <FieldRef Name="DocIcon" />
      <FieldRef Name="LinkFilenameNoMenu" />
    </ViewFields>
    <RowLimit>5</RowLimit>
    <Aggregations Value="Off" />
  </View>
    </Views>

仍然显示相同的字段...没有想法如何到达它...我在我的elements.xml中引用了BaseView =“0”。仍然没有运气。

1 个答案:

答案 0 :(得分:0)

为此,您可能必须在列表定义中定义新视图,然后使用BaseViewID按该ID指定新视图。