문제

View 또는 XSLTListViewWebPart에서 작업 목록의 타임라인을 선언적으로 숨기려고 합니다.XLSTListViewWebPart는 다음과 같이 모듈과 파일을 통해 추가됩니다.

<File Url="default.aspx" Path="default.aspx" Type="GhostableInLibrary" ReplaceContent="TRUE" IgnoreIfAlreadyExists="FALSE" >
        <Property Name="Title" Value="Open Issues" />
        <Property Name="ContentType" Value="ProjectDashboardContentType" />
        <Property Name="PublishingPageLayout" Value="~SiteCollection/_catalogs/masterpage/ProjectPortal-OpenIssues.aspx" />
        <Property Name="ContentTypeId" Value="0x01010007FF3E057FA8AB4AA42FCB67B453FFC100E214EEE741181F4E9F7ACC43278EE811009A4931CEF4F842B9BDFAF179837C58E2" />
        <View WebPartZoneID="ProjectPortalZone" WebPartOrder="0" List="Lists/ProjectTasks" DefaultView="FALSE" BaseViewID="6">
                        <![CDATA[
            <webParts>
             <webPart xmlns="http://schemas.microsoft.com/WebPart/v3">
                <metaData>
                 <type name="Microsoft.SharePoint.WebPartPages.XsltListViewWebPart,Microsoft.SharePoint,Version=15.0.0.0,Culture=neutral,PublicKeyToken=71e9bce111e9429c" />
                 <importErrorMessage>Cannot import this Web Part.</importErrorMessage>
                </metaData>
                <data>
                 <properties>
                    <property name="AllowConnect" type="bool">True</property>
                    <property name="ChromeType" type="chrometype">None</property>
                    <property name="Title" type="string">Project Tasks</property>
                 </properties>
                </data>
             </webPart>
            </webParts>
         ]]>
    </View>


    </File>

여기에 타임라인을 제거하기 위해 추가할 수 있는 속성이 있습니까?아니면 BaseViewId="6"이 참조하는 보기에서 설정해야 하는 항목입니까?

* 편집하다 *

CSS를 출력하거나 전체 영역을 숨기지만 렌더링에서 완전히 제거하는 영리한 jQuery를 수행할 수 있다고 가정합니다.

도움이 되었습니까?

해결책

좋아, 내 목록 스키마의 보기 정의에서 TimelineDueDate 열을 제거하여 이 작업을 수행할 수 있었습니다.

<View BaseViewID="2" Type="HTML" WebPartZoneID="Main" DisplayName="$Resources:core,Late_Tasks;" MobileView="True" MobileDefaultView="False" Url="late.aspx" ReqAuth="TRUE" SetupPath="pages\viewpage.aspx" ImageUrl="/_layouts/15/images/issuelst.png?rev=23">
    <Toolbar Type="Standard" />
    <JSLink>hierarchytaskslist.js</JSLink>
    <XslLink Default="TRUE">main.xsl</XslLink>
    <JSLink>clienttemplates.js</JSLink>
    <RowLimit Paged="TRUE">100</RowLimit>
    <ViewFields>
    <FieldRef Name="Checkmark"></FieldRef><FieldRef Name="LinkTitle"></FieldRef><FieldRef Name="StartDate" /><FieldRef Name="DueDate"></FieldRef><FieldRef Name="AssignedTo"></FieldRef><FieldRef Name="Status" /><FieldRef Name="pdTaskType" /></ViewFields>
    <ViewData>
      <FieldRef Name="PercentComplete" Type="StrikeThroughPercentComplete"></FieldRef>
      <FieldRef Name="DueDate" Type="TimelineDueDate"></FieldRef>
    </ViewData> 
...

ViewData에서 DueDate FieldRef를 제거하기만 하면 작동합니다!

다른 팁

xml을 사용하여 웹파트를 추가하는 경우(예: .webpart 파일에서) 다음 속성을 추가할 수 있습니다.

<property name="ShowTimelineIfAvailable" type="bool">False</property>
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 sharepoint.stackexchange
scroll top