Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

XsltListViewWebPart - parse view automatically #584

Closed
s-KaiNet opened this issue May 27, 2016 · 27 comments

Comments

Projects
None yet
@s-KaiNet
Copy link
Contributor

commented May 27, 2016

Category

  • Enhancement (Provision Engine)

Environment

  • Office 365 / SharePoint Online
  • SharePoint 2016 any CU
  • SharePoint 2013 any CU

Expected or Desired Behavior

I need to provision multiple XsltListViewWebparts on different pages. It's not possible to provide an Id for the view, in order to make the XsltListViewWebPart show appropriate view from the list. That's a known issue and described in this SPO question. We can improve provision engine to support this scenario.
For example XsltListViewWebPart has properties ViewGuid, ListUrl, ListId, ListName. In the library we can grab view's ID, list by url\title\id, and then update hidden view created by XsltListViewWebpart with actual values from view we want.
The flow will be similar to this one (two methods needs to be changed, AddWebPartToWebPartPage and AddWebPartToWikiPage) right after limitedWebPartManager.AddWebPart:

  No                           Yes
 -----Is XsltListViewWebPart? ---------                              
 |                                    |
 |                                   \|/   
 |                1. Get target list using one of the properties (ListId, ListUrl, ListName) in this order 
 |                2. Get hidden view created by XsltListViewWebPart by its id (wpDefinition.Id), consider SPO question above
 |                                    |
 |                     No                       Yes 
 |                      ------- ViewGuid provided? ---------------
 |                      |                                         |
 |    Parse XmlDefinition property                Get view from target list using ViewGuid property 
 |    for XsltListViewWebPart and update          Copy essential values (toolbar, view query, rowlimit, etc.) from list view on step 2 into the hidden view 
 |    hidden view on step 3 with this 
 |    values                                                       |    
 |              |                                                  |  
 |              |                                                  |  
 |              |                                                  |  
 |              |                                                  |  
 |              |                                                 \|/ 
\|/            \|/                 
 -------------|-------------------------------------------------------
              |
        Proceed further 

If you approve I will go ahead with PR.

@VesaJuvonen

This comment has been minimized.

Copy link
Contributor

commented May 27, 2016

Hi Sergei, that looks really good, absolutely welcome as a PR.

@s-KaiNet

This comment has been minimized.

Copy link
Contributor Author

commented Jun 23, 2016

The original issue and solution taken from SPO question

The process is running using 4 stages:

  1. Get target Web
  2. Get target List
  3. Get target View (the view you want to copy to the XsltListViewWebPart)
  4. Update hidden view, which is created by XsltListViewWebPart internally, with values from target View

Details on each stage:

Get target Web:

  • Use WebId property of the web part schema xml OR
  • Use clientContext.Web

Get target List:

  • Use ListUrl property of the web part schema xml OR
  • Use ListId property of the web part schema xml OR
  • Use ListName (a Guid actually) property of the web part schema xml OR
  • Use ListDisplayName property of the web part schema xml
  • Otherwise returns null and stop processing

Get target View:

  • Use ViewId property of the web part schema xml OR
  • Use ViewGuid property of the web part schema xml OR
  • Use ViewName property of the web part schema xml OR
  • Use ViewUrl (AllItems.aspx, AllDocuments.aspx, etc.) property of the web part schema xml OR
  • Parse XmlDefinition property of the web part schema xml and use xml definition's view properties to find the view:
    • Use Name (a Guid actually) attrbute of the <View> element OR
    • Use DisplayName attrbute of the <View> element OR
    • Use Url attrbute of the <View> element
    • Otherwise parse content between <View></View> and use it as source for the XsltListViewWebPart
  • Otherwise returns null and stop processing

Update hidden view:

Get view from step 3 and update hidden view created by XsltListViewWebPart

@jansenbe

This comment has been minimized.

Copy link
Contributor

commented Aug 25, 2016

Closing since the related PR's are merged. Thanks a lot Sergei!

@mschaaks

This comment has been minimized.

Copy link

commented Jan 24, 2017

Hi could somebody please provide a sample listview webpart xml definition that should work. I tried to provision this using version 2.11.1701.1 of the pnp core engine but still the defined view is not used. Sample exported webpart definition:

<pnp:WebPart Title="Agenda" Row="1" Column="1"> <pnp:Contents> <WebPart xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/WebPart/v2"> <Title>Agenda</Title> <FrameType>Default</FrameType> <Description /> <IsIncluded>true</IsIncluded> <ZoneID>wpz</ZoneID> <PartOrder>0</PartOrder> <FrameState>Normal</FrameState> <Height /> <Width /> <AllowRemove>true</AllowRemove> <AllowZoneChange>true</AllowZoneChange> <AllowMinimize>true</AllowMinimize> <AllowConnect>true</AllowConnect> <AllowEdit>true</AllowEdit> <AllowHide>true</AllowHide> <IsVisible>true</IsVisible> <DetailLink>{site}/Lists/Agenda</DetailLink> <HelpLink /> <HelpMode>Modeless</HelpMode> <Dir>Default</Dir> <PartImageSmall /> <MissingAssembly>Kan dit webonderdeel niet importeren.</MissingAssembly> <PartImageLarge>/_layouts/15/images/itevent.png?rev=23</PartImageLarge> <IsIncludedFilter /> <Assembly>Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c</Assembly> <TypeName>Microsoft.SharePoint.WebPartPages.ListViewWebPart</TypeName> <WebId xmlns="http://schemas.microsoft.com/WebPart/v2/ListView">00000000-0000-0000-0000-000000000000</WebId> <ListViewXml xmlns="http://schemas.microsoft.com/WebPart/v2/ListView">&lt;View Name="{698AAC96-BB1E-4C79-8240-947E6180342F}" MobileView="TRUE" Type="CALENDAR" Hidden="TRUE" DisplayName="" Url="{site}/SitePages/Introductiepagina.aspx" Level="1" BaseViewID="1" ContentTypeID="0x" ImageUrl="/_layouts/15/images/events.png?rev=23"&gt;&lt;ViewFields&gt;&lt;FieldRef Name="EventDate" /&gt;&lt;FieldRef Name="EndDate" /&gt;&lt;FieldRef Name="fRecurrence" /&gt;&lt;FieldRef Name="EventType" /&gt;&lt;FieldRef Name="WorkspaceLink" /&gt;&lt;FieldRef Name="Title" /&gt;&lt;FieldRef Name="Location" /&gt;&lt;FieldRef Name="Description" /&gt;&lt;FieldRef Name="Workspace" /&gt;&lt;FieldRef Name="MasterSeriesItemID" /&gt;&lt;FieldRef Name="fAllDayEvent" /&gt;&lt;/ViewFields&gt;&lt;Query&gt;&lt;Where&gt;&lt;DateRangesOverlap&gt;&lt;FieldRef Name="EventDate" /&gt;&lt;FieldRef Name="EndDate" /&gt;&lt;FieldRef Name="RecurrenceID" /&gt;&lt;Value Type="DateTime"&gt;&lt;Month /&gt;&lt;/Value&gt;&lt;/DateRangesOverlap&gt;&lt;/Where&gt;&lt;/Query&gt;&lt;ViewStyle ID="9" /&gt;&lt;Script&gt; g_RequiredFields[9] = new Array; &lt;/Script&gt;&lt;ViewHeader /&gt;&lt;ViewBody /&gt;&lt;ViewFooter /&gt;&lt;ViewEmpty /&gt;&lt;XslLink Default="TRUE"&gt;main.xsl&lt;/XslLink&gt;&lt;JSLink&gt;clienttemplates.js&lt;/JSLink&gt;&lt;RowLimit Paged="TRUE"&gt;30&lt;/RowLimit&gt;&lt;Toolbar Type="Standard" /&gt;&lt;ParameterBindings&gt;&lt;ParameterBinding Name="NoAnnouncements" Location="Resource(wss,noXinviewofY_LIST)" /&gt;&lt;ParameterBinding Name="NoAnnouncementsHowTo" Location="Resource(wss,noXinviewofY_DEFAULT)" /&gt;&lt;/ParameterBindings&gt;&lt;/View&gt;</ListViewXml> <ListName xmlns="http://schemas.microsoft.com/WebPart/v2/ListView">{{listid:Agenda}}</ListName> <ListId xmlns="http://schemas.microsoft.com/WebPart/v2/ListView">{listid:Agenda}</ListId> <ViewFlag xmlns="http://schemas.microsoft.com/WebPart/v2/ListView">8912908</ViewFlag> <ViewFlags xmlns="http://schemas.microsoft.com/WebPart/v2/ListView">TabularView Hidden Calendar Mobile</ViewFlags> <ViewContentTypeId xmlns="http://schemas.microsoft.com/WebPart/v2/ListView">0x</ViewContentTypeId> </WebPart> </pnp:Contents> </pnp:WebPart>

@s-KaiNet

This comment has been minimized.

Copy link
Contributor Author

commented Jan 24, 2017

You are trying to use V2 web part schema (xmlns="http://schemas.microsoft.com/WebPart/v2") which is not supported. You need to use V3 instead.

Below is a minimal working xml sample for xsltlistviewwebpart:

<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="ListDisplayName" type="string">Your list title</property>
				<property name="ViewName" type="string">Your view name</property>
			</properties>
		</data>
	</webPart>
</webParts>
@KEMiCZA

This comment has been minimized.

Copy link
Contributor

commented Jan 24, 2017

@s-KaiNet I have the same issue. Using the xml below the view is not added to the webpart. Using the same version as @mschaaks

Any help is appreciated.

<pnp:WebPart Title="My Tasks" Row="1" Column="1">
  <pnp:Contents>
    <webParts>
      <webPart xmlns="http://schemas.microsoft.com/WebPart/v3">
        <metaData>
          <type name="Microsoft.SharePoint.WebPartPages.XsltListViewWebPart, Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
          <importErrorMessage>Cannot import this Web Part.</importErrorMessage>
        </metaData>
        <data>
          <properties>
            <property name="ListDisplayName" type="string">Tasks</property>
            <property name="ViewName" type="string">Open tasks</property>
            <property name="ChromeType" type="chrometype">TitleAndBorder</property>
            <property name="Title" type="string">My Tasks</property>
          </properties>
        </data>
      </webPart>
    </webParts>
  </pnp:Contents>
</pnp:WebPart>
@s-KaiNet

This comment has been minimized.

Copy link
Contributor Author

commented Jan 24, 2017

@KEMiCZA I've just run all tests for latest version for SharePoint Online and everything OK for me.

Can I ask you to share your whole template.xml or a part with web parts.
Ideally if you can create a small project where your issue is reproduced and share it or send directly to me (my mail is in the profile).

@KEMiCZA

This comment has been minimized.

Copy link
Contributor

commented Jan 24, 2017

@s-KaiNet Sergei I've sent you the e-mail with the full xml template. Thanks for looking into this.

@s-KaiNet

This comment has been minimized.

Copy link
Contributor Author

commented Jan 24, 2017

@KEMiCZA please confirm that you are applying your template on sub-web?

@KEMiCZA

This comment has been minimized.

Copy link
Contributor

commented Jan 25, 2017

@s-KaiNet Yes it's indeed on a subweb!

@s-KaiNet

This comment has been minimized.

Copy link
Contributor Author

commented Jan 25, 2017

I think I found the reason for that behavior. I guess you are using something like this:

var web = ctx.Site.OpenWeb("yoursubweb");
web.ApplyProvisioningTemplate();

In that case it doesn't work as expected, because of XsltWebPartPostProcessor.GetWeb method. return ((ClientContext) webPartPage.Context).Web; intended to get reference to yoursubweb but instead return reference to the root web. Then it tries to find list on the root web, which is not working of course and just returns without applying right view.

For now here are two workarounds -

  • provide WebId property inside web part schema, <property name="WebId" type="System.Guid, mscorlib, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089">Web id here</property>

    OR

  • instantiate new client context using var ctx = new ClientContext("https://your.sharepoint.com/sites/dev/yoursubweb"); ctx.Web.ApplyTemplate(); In that case ((ClientContext) webPartPage.Context).Web gets correct web reference.

I strongly recommend you to use last approach (re-instantiate client context) because in the past I saw some other undesirable behavior when applying template on web created with Site.OpenWeb() - like this one for example.
Re-instantiate context for applying on a sub web and I suppose everything should work just fine.

@s-KaiNet

This comment has been minimized.

Copy link
Contributor Author

commented Jan 25, 2017

@KEMiCZA I've added PR to fix this issue. Until it get merged, you can use workarounds proposed.
Please tell if it works for you.

@mschaaks

This comment has been minimized.

Copy link

commented Feb 3, 2017

Hi Sergei,

Perhaps I should be entering a new issue: only the V2 ListView webpart (not be confused with the XsltListView webpart supports rendering a Calendar style View for a Calendar list (see attachments).

Using SharePoint manager i can see that there is a difference between the source listview webpart configuration and the created listview webpart configuration. The ViewType property seems to be set to the value Html but I think this should be set to the value Calendar. The ViewType enums are described here: https://msdn.microsoft.com/en-us/library/microsoft.sharepoint.webpartpages.viewtype.aspx

created_listview_webpart_view
desired_listview_webpart_view
created_listview_webpart_viewtype_sharepoint_manager
desired_listview_webpart_viewtype_sharepoint_manager

@s-KaiNet

This comment has been minimized.

Copy link
Contributor Author

commented Feb 4, 2017

Hi Marc,
can you please clarify: are you using list view web part with version 2 schema?

@mschaaks

This comment has been minimized.

Copy link

commented Feb 5, 2017

Yes, it is a list view web part version 2 schema. As I already mentioned, this is the web part type that is capable of displaying the mentioned "calendar" view and is placed on a page when inserting a listview webpart for an Agenda list.

@s-KaiNet

This comment has been minimized.

Copy link
Contributor Author

commented Feb 5, 2017

Currently V2 schema not supported, only V3

@alirizarry

This comment has been minimized.

Copy link

commented Jun 9, 2017

I am using the v3 but the view is still not being applied. I have applied the ViewName property but it does not set the correct view. Any thoughts?

image

@hjdrent

This comment has been minimized.

Copy link

commented Jun 13, 2017

Same here.
All the other properties are set as defined.
But using the ViewName or ViewUrl property has no effect.
Can't figure out why.

@s-KaiNet

This comment has been minimized.

Copy link
Contributor Author

commented Jun 13, 2017

@alirizarry @hjdrent
Can you please send your provision template to my email, so I will try to figure it out? Can please you also strip out all unnecessary tags and leave only webpart and a list.

@s-KaiNet

This comment has been minimized.

Copy link
Contributor Author

commented Jun 13, 2017

Guys, please upgrade to the latest version of PnP-Sites-Core. I've noticed you are using old version, old version doesn't have these changes. The latest fix for this issue was merged only a few months ago.

@alirizarry

This comment has been minimized.

Copy link

commented Jun 13, 2017

@s-KaiNet

This comment has been minimized.

Copy link
Contributor Author

commented Jun 13, 2017

The version you are using (2.5.1606.2) was released almost a year ago. The PR was merged in August or September 2016, please upgrade to latest version.

@waaromikniet

This comment has been minimized.

Copy link

commented Oct 17, 2017

When I use this to set the view

Parse XmlDefinition property of the web part schema xml and use xml definition's view properties to find the view:
Otherwise parse content between and use it as source for the XsltListViewWebPart

The toolbar element is ignored. Is there anyway to set the toolbar to none?

@petepuu

This comment has been minimized.

Copy link

commented Feb 9, 2018

Hi,

I am facing similar issues with ViewName although I am using PowerShell to apply the template -> Apply-PnPProvisioningTemplate. Also tried {viewid:ListName,ViewName} but wasn't able to get that working either. ViewGuid needs to be in uppercase, so one problem could be that viewid token is returned in lowercase as it is in the example in documentation. BTW, is there a way to lower/uppercase tokens in the template?

https://github.com/SharePoint/PnP-Sites-Core/blob/master/Core/ProvisioningEngineTokens.md

I have the Feb 2018 PnP PS module installed

image

image

Pete

@NormanMann

This comment has been minimized.

Copy link

commented Feb 15, 2018

Please also copy ViewData in UpdateHiddenView method

@petepuu

This comment has been minimized.

Copy link

commented Feb 26, 2018

Finally found the issue which was pretty simple one in my case. In my webpart definition I had both ListId and ListName defined and the guid in ListId was of course the one exported from my template site. So just didn't remember to remove the ListId. Damn! :)

image

@anupam-ujjwal

This comment has been minimized.

Copy link

commented Mar 20, 2018

I too facing the same issue. I have provisioned a page with a list view webpart but the view is setting back to default view. I am using PowerShell with Apply-PnPProvisioningTemplate commnad.
PnP PowerShell Version : 2.18.1709.0

Template Scope : "RootSite"

Below is my template xml
Template.zip

    <pnp:Page Url="{site}/SitePages/ApprovedInsights.aspx" Layout="OneColumn" Overwrite="true" >
     <pnp:WebParts>
        <pnp:WebPart Title="Approved Insights" Column="1" Row="1">
          <pnp:Contents>
            <webParts>
              <webPart xmlns="http://schemas.microsoft.com/WebPart/v3">
                <metaData>
                  <type name="Microsoft.SharePoint.WebPartPages.XsltListViewWebPart, Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
                 <importErrorMessage>Cannot import this Web Part.</importErrorMessage>
                </metaData>
                <data>
                  <properties>
                    <property name="ShowWithSampleData" type="bool">False</property>
                    <property name="Default" type="string" />
                    <property name="NoDefaultStyle" type="string" />
                    <property name="CacheXslStorage" type="bool">True</property>
                    <property name="ViewContentTypeId" type="string" />
                    <property name="XmlDefinitionLink" type="string" />
                    <property name="ManualRefresh" type="bool">False</property>
                    <property name="ListUrl" type="string" null="true" />
                    <property name="ListId" type="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">{listid:Medical Input}</property>
                    <property name="TitleUrl" type="string">{site}/Lists/MedicalInput</property>
                    <property name="EnableOriginalValue" type="bool">False</property>
                    <property name="Direction" type="direction">NotSet</property>
                    <property name="ServerRender" type="bool">False</property>
                    <property name="ViewFlags" type="Microsoft.SharePoint.SPViewFlags, Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c">Html, Hidden, Mobile</property>
                    <property name="AllowConnect" type="bool">True</property>
                    <property name="ListName" type="string">{{listid:Medical Input}}</property>
                    <property name="ListDisplayName" type="string" null="true" />
                    <property name="AllowZoneChange" type="bool">True</property>
                    <property name="ChromeState" type="chromestate">Normal</property>
                    <property name="DisableSaveAsNewViewButton" type="bool">False</property>
                    <property name="ViewFlag" type="string" />
                    <property name="DataSourceID" type="string" />
                    <property name="ExportMode" type="exportmode">All</property>
                    <property name="AutoRefresh" type="bool">False</property>
                    <property name="FireInitialRow" type="bool">True</property>
                    <property name="AllowEdit" type="bool">True</property>
                    <property name="Description" type="string" />
                    <property name="HelpMode" type="helpmode">Modeless</property>
                    <property name="BaseXsltHashKey" type="string" null="true" />
                    <property name="AllowMinimize" type="bool">True</property>
                    <property name="CacheXslTimeOut" type="int">86400</property>
                    <property name="ChromeType" type="chrometype">BorderOnly</property>
                    <property name="Xsl" type="string" null="true" />
                    <property name="JSLink" type="string" null="true" />
                    <property name="CatalogIconImageUrl" type="string">/_layouts/15/images/itgen.png?rev=44</property>
                    <property name="SampleData" type="string" null="true" />
                    <property name="UseSQLDataSourcePaging" type="bool">True</property>
                    <property name="TitleIconImageUrl" type="string" />
                    <property name="PageSize" type="int">-1</property>
                    <property name="ShowTimelineIfAvailable" type="bool">True</property>
                    <property name="Width" type="string" />
                    <property name="DataFields" type="string" />
                    <property name="Hidden" type="bool">False</property>
                    <property name="Title" type="string">Approved Insights</property>
                    <property name="PageType" type="Microsoft.SharePoint.PAGETYPE, Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c">PAGE_NORMALVIEW</property>
                    <property name="DataSourcesString" type="string" />
                    <property name="AllowClose" type="bool">True</property>
                    <property name="InplaceSearchEnabled" type="bool">True</property>
                    <property name="WebId" type="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">00000000-0000-0000-0000-000000000000</property>
                    <property name="Height" type="string" />
                    <property name="GhostedXslLink" type="string">main.xsl</property>
                    <property name="DisableViewSelectorMenu" type="bool">False</property>
                    <property name="DisplayName" type="string" />
                    <property name="IsClientRender" type="bool">False</property>
                    <property name="XmlDefinition" type="string">&lt;View Name="{EA9D172F-B513-451F-8DAB-056440AFE1C2}" MobileView="TRUE" Type="HTML" Hidden="TRUE" TabularView="FALSE" DisplayName="" Url="{site}/SitePages/Approved Insights.aspx" Level="1" BaseViewID="1" ContentTypeID="0x" ImageUrl="/_layouts/15/images/generic.png?rev=44" &gt;&lt;Query&gt;&lt;OrderBy&gt;&lt;FieldRef Name="ID"/&gt;&lt;/OrderBy&gt;&lt;Where&gt;&lt;Eq&gt;&lt;FieldRef Name="MIT_ApprovalStatus"/&gt;&lt;Value Type="Text"&gt;Approved&lt;/Value&gt;&lt;/Eq&gt;&lt;/Where&gt;&lt;/Query&gt;&lt;ViewFields&gt;&lt;FieldRef Name="LinkTitle"/&gt;&lt;FieldRef Name="MIT_Franchise"/&gt;&lt;FieldRef Name="MIT_RegionCluster"/&gt;&lt;FieldRef Name="MIT_CPO"/&gt;&lt;FieldRef Name="RatedBy" Explicit="TRUE"/&gt;&lt;FieldRef Name="Ratings0" Explicit="TRUE"/&gt;&lt;FieldRef Name="MIT_SourceOfInput"/&gt;&lt;FieldRef Name="MIT_DateOfInteraction"/&gt;&lt;FieldRef Name="Author"/&gt;&lt;FieldRef Name="AverageRating"/&gt;&lt;/ViewFields&gt;&lt;RowLimit Paged="TRUE"&gt;10&lt;/RowLimit&gt;&lt;Aggregations Value="Off"/&gt;&lt;ViewStyle ID="17"/&gt;&lt;JSLink&gt;clienttemplates.js&lt;/JSLink&gt;&lt;XslLink Default="TRUE"&gt;main.xsl&lt;/XslLink&gt;&lt;Toolbar Type="None"/&gt;&lt;/View&gt;</property>
                    <property name="InitialAsyncDataFetch" type="bool">False</property>
                    <property name="AllowHide" type="bool">True</property>
                    <property name="ParameterBindings" type="string">&lt;ParameterBinding Name="dvt_sortdir" Location="Postback;Connection" /&gt;&lt;ParameterBinding Name="dvt_sortfield" Location="Postback;Connection" /&gt;&lt;ParameterBinding Name="dvt_startposition" Location="Postback" DefaultValue="" /&gt;&lt;ParameterBinding Name="dvt_firstrow" Location="Postback;Connection" /&gt;&lt;ParameterBinding Name="OpenMenuKeyAccessible" Location="Resource(wss,OpenMenuKeyAccessible)" /&gt;&lt;ParameterBinding Name="open_menu" Location="Resource(wss,open_menu)" /&gt;&lt;ParameterBinding Name="select_deselect_all" Location="Resource(wss,select_deselect_all)" /&gt;&lt;ParameterBinding Name="idPresEnabled" Location="Resource(wss,idPresEnabled)" /&gt;&lt;ParameterBinding Name="NoAnnouncements" Location="Resource(wss,noXinviewofY_LIST)" /&gt;&lt;ParameterBinding Name="NoAnnouncementsHowTo" Location="Resource(wss,noXinviewofY_DEFAULT)" /&gt;</property>
                    <property name="DataSourceMode" type="Microsoft.SharePoint.WebControls.SPDataSourceMode, Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c">List</property>
                    <property name="AutoRefreshInterval" type="int">60</property>
                    <property name="AsyncRefresh" type="bool">False</property>
                    <property name="HelpUrl" type="string" />
                    <property name="MissingAssembly" type="string">Cannot import this Web Part.</property>
                    <property name="XslLink" type="string" null="true" />
                    <property name="SelectParameters" type="string" />
                    <property name="HasClientDataSource" type="bool">False</property>
                  </properties>
                </data>
              </webPart>
            </webParts>
          </pnp:Contents>
        </pnp:WebPart>
      </pnp:WebParts>
    </pnp:Page>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.