Compartir a través de


Esquema de Definición del Elemento web del Cliente

Se aplica a: SharePoint 2016 | SharePoint Foundation 2013 | SharePoint Online | SharePoint Server 2013

El elemento web Cliente es la estructura de respaldo de los elementos de la aplicación. Los elementos de la aplicación se definen en documentos XML y se implementan como parte de una característica.

Definición de esquema XML

Un documento XML que define elementos web cliente debe validarse con el esquema definido en el archivo wss.xsd. Este archivo se encuentra en la ruta de acceso siguiente:

%ProgramFiles%\\Common Files\\Microsoft Shared\\web server extensions\\15\\TEMPLATE\\XML

Elementos

Elementos

ClientWebPart

Comentarios

El elemento ClientWebPart contiene la definición principal de un elemento web Client. Un elemento web cliente es un mecanismo de extensibilidad de la interfaz de usuario que permite a las aplicaciones mostrar información en la web host. Puede representar el contenido HTML de una página en un IFrame incrustado en una página de SharePoint.

La página que se va a representar dentro del IFrame se define mediante el atributo Src del elemento Content . Se debe permitir que la página de destino se muestre en un marco; de lo contrario, la página de SharePoint muestra el siguiente error: Este contenido no se puede mostrar en un marco.

Algunas páginas contienen un encabezado HTTP X-FRAME-OPTIONS como mecanismo para evitar ataques ClickJacking . Debe evaluar cuidadosamente si la página admite un escenario que podría ser el objetivo de un ataque ClickJacking, como una página de transacción bancaria o una página de compra en una tienda en línea. Después de evaluar el riesgo de permitir que las páginas externas enmarcan la página de destino, puede quitar el encabezado http X-FRAME-OPTIONS para mostrar la página en un elemento web cliente.

De forma predeterminada, las páginas de SharePoint incluyen un encabezado HTTP X-FRAME-OPTIONS . Si usa una página de SharePoint como destino del elemento web Cliente, puede quitar el encabezado X-FRAME-OPTIONS agregando el elemento web AllowFraming.

El siguiente fragmento de código muestra cómo agregar un elemento web AllowFraming a la página de SharePoint:

    <asp:Content ContentPlaceHolderID="PlaceHolderMain" runat="server">
        <WebPartPages:AllowFraming ID="AllowFraming1" runat="server" />
        <div>
            Your content
        </div>
    </asp:Content>

Puede agregar propiedades personalizadas al elemento web Cliente. Las propiedades personalizadas se definen en el archivo Elements.xml de la característica. Hay cuatro tipos de propiedades personalizadas:

  • string
  • integer
  • booleano
  • Enumeración

Puede detectar cuándo el usuario está editando el elemento web cliente mediante el token _editMode_ . El token _editMode_ devuelve 1 si el elemento web cliente está en modo de edición y 0 en caso contrario.

La página de destino puede cambiar dinámicamente el tamaño del IFrame del elemento web cliente. Puede usar JavaScript para emitir un mensaje postmessage con el alto y el ancho deseados. Para obtener un ejemplo de código que muestra cómo cambiar el tamaño de un elemento de aplicación, vea Cambiar el tamaño de elementos de aplicación dinámicamente en aplicaciones para SharePoint.

Los elementos web cliente no admiten conexiones de elementos web.

Ejemplo

En el ejemplo siguiente se muestra un archivo XML que declara un elemento web cliente. Para ver un artículo en el que se muestran los pasos para crear e implementar un elemento de aplicación, consulte Creación de elementos de complemento para instalar con el complemento de 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>

Vea también