Esquema de Definição de Web Part de Cliente
Aplica-se a: SharePoint 2016 | SharePoint Foundation 2013 | SharePoint Online | SharePoint Server 2013
A Web Part cliente é a estrutura de suporte das partes do aplicativo. As partes do aplicativo são definidas em documentos XML e implantadas como parte de um recurso.
Definição de esquema XML
Um documento XML que define Web Parts do cliente deve ser validado com o esquema definido no arquivo wss.xsd. Esse arquivo está localizado no seguinte caminho:
%ProgramFiles%\\Common Files\\Microsoft Shared\\web server extensions\\15\\TEMPLATE\\XML
Elementos
Comentários
O elemento ClientWebPart contém a definição principal de uma Web Part cliente. Uma Web Part cliente é um mecanismo de extensibilidade da interface do usuário que permite que os aplicativos mostrem informações no host da Web. Você pode renderizar o conteúdo HTML de uma página em um IFrame inserido em uma página do SharePoint.
Você define a página a ser renderizada dentro do IFrame usando o atributo Src do elemento Content . A página de destino deve ter permissão para ser exibida em um quadro; caso contrário, a página do SharePoint exibirá o seguinte erro: este conteúdo não pode ser exibido em um quadro.
Algumas páginas contêm um cabeçalho http X-FRAME-OPTIONS como um mecanismo para evitar ataques clickJacking . Você deve avaliar cuidadosamente se a página dá suporte a um cenário que pode ser direcionado por um ataque ClickJacking, como uma página de transação bancária ou uma página de compra em uma loja online. Depois de avaliar o risco de permitir que sua página de destino seja enquadrada por páginas externas, você pode remover o cabeçalho http X-FRAME-OPTIONS para exibir sua página em uma Web Part cliente.
Por padrão, as páginas do SharePoint incluem um cabeçalho http X-FRAME-OPTIONS . Se você estiver usando uma página do SharePoint como o destino para sua Web Part cliente, poderá remover o cabeçalho X-FRAME-OPTIONS adicionando a Web Part AllowFraming.
O snippet de código a seguir mostra como adicionar uma Web Part AllowFraming à sua página do SharePoint:
<asp:Content ContentPlaceHolderID="PlaceHolderMain" runat="server">
<WebPartPages:AllowFraming ID="AllowFraming1" runat="server" />
<div>
Your content
</div>
</asp:Content>
Você pode adicionar propriedades personalizadas à web part do cliente. Defina as propriedades personalizadas no Elements.xml arquivo do recurso. Há quatro tipos de propriedades personalizadas:
- cadeia de caracteres
- inteiro
- booliano
- Enumeração
Você pode detectar quando o usuário está editando sua Web Part cliente usando o _token editMode_ . O _token editMode_ retornará 1 se a Web Part cliente estiver no modo de edição e 0 caso contrário.
A página de destino pode redimensionar dinamicamente o IFrame da Web Part do cliente. Você pode usar o JavaScript para emitir uma postmessagem com a altura e a largura desejadas. Para obter um exemplo de código que mostra como redimensionar uma parte do aplicativo, consulte Redimensionar partes do aplicativo dinamicamente em aplicativos para SharePoint.
As Web Parts do cliente não dão suporte a conexões de Web Part.
Exemplo
O exemplo a seguir mostra um arquivo XML que declara uma Web Part cliente. Para obter um artigo que mostra as etapas para criar e implantar uma parte do aplicativo, consulte Criar partes de suplemento para instalar com seu Suplemento do SharePoint.
<?xml version="1.0" encoding="UTF-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<ClientWebPart
Title="Basic app part"
Name="Basic app part"
Description="This is a basic app part with custom properties." >
<!-- The properties are passed through the query string
using the following notation: _propertyName_
in the Src property of the Content element
-->
<Content
Src="~remoteAppUrl/AppPartContent.aspx?strProp=_strProp_&intProp=_intProp_&boolProp=_boolProp_&enumProp=_enumProp_&editmode=_editMode_"
Type="html"/>
<Properties>
<Property
Name="strProp"
Type="string"
RequiresDesignerPermission="true"
DefaultValue="String default value"
WebCategory="Basic app part category"
WebDisplayName="A property of type string.">
</Property>
<Property
Name="intProp"
Type="int"
RequiresDesignerPermission="true"
DefaultValue="0"
WebCategory="Basic app part category"
WebDisplayName="A property of type integer.">
</Property>
<Property
Name="boolProp"
Type="boolean"
RequiresDesignerPermission="true"
DefaultValue="false"
WebCategory="Basic app part category"
WebDisplayName="A property of type boolean.">
</Property>
<Property
Name="enumProp"
Type="enum"
RequiresDesignerPermission="true"
DefaultValue="1st"
WebCategory="Basic app part category"
WebDisplayName="A property of type enum.">
<EnumItems>
<EnumItem WebDisplayName="First option" Value="1st"/>
<EnumItem WebDisplayName="Second option" Value="2nd"/>
<EnumItem WebDisplayName="Third option" Value="3rd"/>
</EnumItems>
</Property>
</Properties>
</ClientWebPart>
</Elements>