Partilhar via


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

Elementos

ClientWebPart

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_&amp;intProp=_intProp_&amp;boolProp=_boolProp_&amp;enumProp=_enumProp_&amp;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>

Confira também