RenderPattern-Element (Feldtypen)
Gilt für: SharePoint 2016 | SharePoint Foundation 2013 | SharePoint Online | SharePoint Server 2013
Wichtig
In diesem Thema wird Markup beschrieben, das in einer inzwischen veralteten Methode zum Rendern von benutzerdefinierten Feldtypen in Listenansichten und in den Formularen Anzeigen, Bearbeiten und Neue verwendet wurde. Es wird ausschließlich zur Unterstützung von Personen bereitgestellt, die einen benutzerdefinierten Feldtyp debuggen, der ursprünglich für eine frühere Version von SharePoint Foundation entwickelt wurde. Informationen zu den empfohlenen Methoden finden Sie unter Feldrenderingvorlagen und Muster des benutzerdefinierten Feldrenderings.
Benutzerdefinierte Felder, deren Rendern anhand von RenderPattern-Markup definiert wird, werden weiter ordnungsgemäß auf Formularen gerendert. SharePoint Foundation verwendet jedoch standardmäßig XSLT-Stylesheets, um Felder in Listenansichten zu rendern, auch für ältere benutzerdefinierte Felder, deren Listenansichtsrendering mit renderPattern definiert ist. Um das Rendern eines solchen Felds zu ermöglichen, muss dem enthaltenden FieldTypes-Element in der Feldtypdefinitionsdatei (fldtype*.xml
) ein <Field Name="CAMLRendering">TRUE</Field>
Element hinzugefügt werden.
RenderPattern definiert die tatsächliche Collaborative Application Markup Language (CAML), DEN HTML-Code und das Skript, die SharePoint Foundation zum Rendern des Feldtyps auf der Benutzeroberfläche verwenden kann. Außerdem stellt dieses Element in Listenansichten die Spaltenüberschriften basierend auf dem ausgewählten Feldtyp dar.
<RenderPattern Name="Text">
</RenderPattern>
Elemente und Attribute
In den folgenden Abschnitten werden Attribute, untergeordnete und übergeordnete Elemente erläutert.
Attribute
Attribut | Beschreibung |
---|---|
Name |
String erforderlich. Der Name des Rendermusters, das Sie in diesem RenderPattern-Element definieren. Gültige Werte sind: - HeaderPattern. Definiert das Rendern für die Spaltenüberschrift auf Listenansichtsseiten, wenn CAML-Rendering aktiviert ist (indem in das enthaltene FieldTypes-Element der fldtypes*.xml Datei eingeschlossen <Field Name="CAMLRendering">TRUE</Field> wird).- DisplayPattern. Definiert das Rendern des Felds für das Formular Anzeige (Listenelement). Wenn DAS CAML-Rendering aktiviert ist (indem das enthaltene FieldTypes-Element der fldtypes*.xml Datei eingeschlossen <Field Name="CAMLRendering">TRUE</Field> wird), definiert displayPattern auch das Rendern des Felds auf Listenansichtsseiten.- EditPattern. Definiert das Rendern des Felds für das Formular "Bearbeiten" (Listenelement). - NewPattern. Definiert das Rendern des Felds für das Formular "Neu" (Listenelement). - PreviewDisplayPattern. Definiert für die Verwendung in einem WYSIWYG -Website-Designer ("what you see is what you get") wie SharePoint Designer eine Vorschau der Darstellung des Felds im Anzeigemodus mit fiktiven Daten. - PreviewEditPattern. Definiert für die Verwendung in einem WYSIWYG-Website-Designer wie SharePoint Designer eine Vorschau der Darstellung des Felds im Bearbeitungsmodus mit fiktiven Daten. - PreviewNewPattern. Definiert für die Verwendung in einem WYSIWYG-Website-Designer wie SharePoint Designer eine Vorschau der Darstellung des Felds im Neuen Modus mit fiktiven Daten. |
Untergeordnete Elemente
Keine explizit definiert, aber dieses Element ist ein Container mit CAML-Markup aus dem View-Schema.
Übergeordnete Elemente
Hinweise
Vererbung von "RenderPattern"-Elementen
Wenn ein RenderPattern-Element mit einem bestimmten Name-Wert nicht für einen Feldtyp angegeben ist, erbt der Feldtyp das RenderPattern-Element mit diesem Namen von seinem übergeordneten Feldtyp.
HeaderPattern
Wenn CAML-Rendering aktiviert ist, muss der Feldtyp den HeaderPattern-Typ des RenderPattern-Elements aufweisen, entweder direkt oder durch Vererbung, andernfalls wird die Spaltenüberschrift des Felds in Listenansichten nicht gerendert. Das Markup in einem HeaderPattern kann recht einfach sein, wenn der Feldtyp nicht sortiert oder gefiltert werden kann. Wenn der Feldtyp jedoch sortiert oder gefiltert werden kann, kann das Markup recht komplex werden, da der Header nicht nur als Titel für die Spalte, sondern auch als Dropdownmenü-Steuerelement zum Sortieren und Filtern dient. Da die Möglichkeit zum Sortieren und Filtern für bestimmte Spalten deaktiviert werden kann (auch wenn der Feldtyp, auf dem die Spalte basiert), muss das Markup Switch-Elemente verwenden, um zu testen, ob das Sortieren oder Filtern für die Spalte aktiviert ist. Beispiele finden Sie unter %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\TEMPLATE\XML\FLDTYPES.XML.
DisplayPattern
Wenn CAML-Rendering aktiviert ist, muss ein Feldtyp den DisplayPattern-Typ des RenderPattern-Elements aufweisen (durch Vererbung, wenn nicht direkt), damit das Feld in Listenansichten gerendert werden kann. Dies ist nicht erforderlich, um das Feld im Anzeigemodus zu rendern, z. B. auf der Seite Anzeige (Listenelement), da ein Feld auch im Anzeigemodus mithilfe eines Renderingsteuerelements (ASCX-Datei) gerendert werden kann. Keiner der älteren Feldtypen, die im Lieferumfang von SharePoint Foundation enthalten sind, verwendet ein Rendering-Steuerelement anstelle eines DisplayPattern-Typs des RenderPattern-Elements , um das Feld im Anzeigemodus zu rendern.
Der DisplayPattern-Typ von RenderPattern kann auch verwendet werden, um das Feld in jeder Zeile einer Listenansicht zu rendern. Standardmäßig verwendet SharePoint Foundation XSLT-Markup in einer fldtypes*.xsl
Datei in %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\TEMPLATE\LAYOUTS\XSL, um Felder in Listenansichten zu rendern.
fldtypes*.xml
Die Datei in %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\TEMPLATE\XML wird jedoch auf das Vorhandensein von <Field Name="CAMLRendering">TRUE</Field>
im enthaltenden FieldTypes-Element für das Feld überprüft. Wenn es vorhanden ist, wird displayPattern verwendet, um das Feld in Listenansichten zu rendern.
Hinweis
Zwei ältere Feldtypen, die im Lieferumfang von SharePoint Foundation enthalten sind, verfügen nicht über den DisplayPattern-TypRenderPattern in FLDTYPES.XML: (1) ContentTypeId-Felder sind nie sichtbar. (2) Berechnete Felder werden in Listenansichten und im Anzeigemodus von einem DisplayPattern-Element in ihren Field-Elementen innerhalb der schema.xml jeder Liste gerendert, in der sie angezeigt werden.
"NewPattern" und "EditPattern"
Die NewPattern - und EditPattern-Typen von RenderPattern wurden verwendet, um ein Feld im Neuen Modus bzw. im Bearbeitungsmodus zu rendern, wenn das Feld keine signifikante Datenverarbeitung oder Datenüberprüfung erforderte, als ein Listenelement, das das Feld enthält, erstellt oder bearbeitet wurde. Freiform-Notizfelder können beispielsweise nicht überprüft werden, da text ein gültiger Wert ist. Ebenso beschränken Auswahlfelder und Nachschlagefelder die Auswahlmöglichkeiten des Benutzers definitionsgemäß auf gültige Werte. Andere Felder, z. B. Currency und DateTime, erfordern nur eine minimale Überprüfung, die im Skript codiert werden kann.
Beispiele für newPattern - und EditPattern-Typen von RenderPatterns finden Sie unter %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\TEMPLATE\XML\FLDTYPES.XML.
RenderPatterns für von mehreren Spalten abgeleitete benutzerdefinierte Feldtypen
Im RenderPattern-Markup eines benutzerdefinierten "MultiColumn"-Felds dient das SubcolumnNumber-Attribut eines Column-Elements zum Angeben einer einzelnen Spalte in einem mehrspaltigen Feldtyp. Weitere Informationen zu mehrspaltigen Feldtypen finden Sie unter Custom Multicolumn Field Classes.
Beispiel
Im folgenden Beispiel wird ein Anzeigerenderingmuster für einen benutzerdefinierten Feldtyp definiert, der vom MultiColumn-Typ erbt. Das Feld wird verwendet, um amerikanische Adressen zu speichern. In der ersten Unterspalte wird die Adresse gespeichert, gefolgt von einem HTML-Zeilenumbruch. In der nächsten Unterspalte wird der Stadtname gefolgt von einem Komma und einem Leerzeichen gespeichert. In der dritten Unterspalte wird der Zustand gespeichert, und nach einem Leerzeichen speichert die letzte Unterspalte die Postleitzahl.
<RenderPattern Name="DisplayPattern">
<Switch>
<Expr><Column/></Expr>
<Case Value="">
</Case>
<Default>
<Column SubColumnNumber="0" HTMLEncode="TRUE"/>
<HTML><![CDATA[<BR>]]></HTML>
<Column SubColumnNumber="1" HTMLEncode="TRUE"/>
<HTML><![CDATA[, &nbsp;]]></HTML>
<Column SubColumnNumber="2" HTMLEncode="TRUE"/>
<HTML><![CDATA[ &nbsp;]]></HTML>
<Column SubColumnNumber="3" HTMLEncode="TRUE"/>
</Default>
</Switch>
</RenderPattern>