2009-08-31 5 views
6

Je place des contrôles de serveur ASP dans mon SharePoint XSLT en utilisant SharePoint Designer. J'ai trouvé que c'est très pratique pour préremplir des valeurs dans le formulaire, ou fournir une expérience différente de la mise en page définie par SharePoint (champs cachés, etc).Existe-t-il une bonne syntaxe de référence de la base de données SharePoint?

Par exemple, je peux utiliser un asp: contrôle TextBox au lieu de SharePoint: FormField commande si je définis comme tel:

<xsl:stylesheet ... xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime"> 
    <xsl:param name="Name" /> 

    <xsl:template match="/"> 
     <!-- omitted for clarity --> 

     <asp:TextBox id="txtName" runat="server" Text="{$Name}" 
     __designer:bind="{ddwrt:DataBind('i','txtName','Text','TextChanged','ID',ddwrt:EscapeDelims(string(@ID)),'@MySharePointField')}" 

    </xsl:template> 
</xsl:stylesheet> 

J'ai googlé mais ne peut pas sembler trouver une bonne référence pour les paramètres de la méthode ddwrt: DataBind.

Quelqu'un sait-il?

+1

Cette question est maintenant un Tumbleweed. Je vais commencer à faire des recherches moi-même. – bryanbcook

Répondre

6

Le DDWRT: méthode DataBind est une enveloppe pour DataFormWebPart.AddDataBinding

Le paramètre mystérieux premier se réfère à la « opération ». Il sera soit "i" (insérer), "u" (mise à jour) ou "d" (supprimer). Malheureusement, ce sont des valeurs littérales car le XSLT n'a pas accès aux énumérations, etc.

Les autres champs curieux sont le propertyName et eventName, qui sont des membres du contrôle que vous liez. L'événement est câblé en utilisant la réflexion dans le formulaire sharepoint et la propriété est utilisée pour récupérer la valeur.

Les champs restants se réfèrent à la clé primaire et à la valeur à lier.

Full details on the method signature and how to use it can be found here

Questions connexes