Sharepoint Liste mit XSLT bearbeiten

Roxas

Grünschnabel
#1
Hi Leute,

ich bin gerade dabei in einem Webpart für Inhaltsabfrage eine Liste mit XSLT verändert darzustellen.
Mein Problem bezieht sich dabei auf die Reihenfolge wie die einzelnen Elemente(Zeilen) dargestellt werden.
Ich würde gern alles nach dem Titel der Elemente sortieren. Um mein Problem etwas genauer zu beschreiben werde ich es einmal versuchen zu veranschaulichen:

Meine Liste:

Titel Beschreibung Sonstiges
1 2 3
4 5 6

Im Moment sieht meine Ausgabe durch XSLT so aus:

4 5 6
1 2 3

So sollte sie aussehen:

1 2 3
4 5 6

Der Kopf meines Templates sieht so aus:
<xsl:template name="xsltest" match="Row[@Style='xsltest']" mode="itemstyle">

So wie es aussieht wird das Template bei jeder Zeile neu durchlaufen. Angefangen wird bei der ID 1 und somit wird alles umgedreht.
Ich habe es bereits mit einem <xsl:sort>-Befehlt probiert aber der funktioniert in einem Template so direkt nicht. Ich habe gerade erst begonnen mit XSLT und weiß daher nicht weiter. Wenn mir irgendjemand helfen kann wäre ich sehr dankbar :).
 
#2
Poste mal das gesamte XSLT, so es nicht zu lang ist. Und dann, wenn möglich, auch die Zuordnung deiner "Liste" zu XML-Elementen, damit wir wissen, wie die "Sharepoint-Liste" in XML dargestellt wird.
 

Roxas

Grünschnabel
#3
Hier das XSL:
Code:
<xsl:template name="xsltest" match="Row[@Style='xsltest']" mode="itemstyle">
		<div id="Beispielelement">
			<div class="Titel">
				<h1>
					<xsl:value-of select="@Title"/>
					<xsl:value-of select="@ID"/>
				</h1>
			</div>
			<div class="Notizen">
				<div class="NotizfeldTitel">
					Tätigkeiten:
				</div>
				<div class="Notizfeld">
					<xsl:value-of select="@Notizen" disable-output-escaping="yes"/>
				</div>
			</div>
			<div class="Author">
				<div class="AuthorLeft">
					<xsl:variable name="Link" select="@Webseite"/>
					Webseite: 
					<a href="{$Link}">
						<xsl:value-of select="$Link"/>
					</a>
				</div>
				<div class="AuthorRight">
					Von 
					<xsl:value-of select="@Author"/>
					, erstellt am 
					<xsl:value-of select="@Created"/>
				</div>
			</div>
		</div>
	</xsl:template>
Die Liste in Sharepoint ist eine ganz normale benutzerdefinierte Liste die folgende Spalten enthält: Titel(Text), Webseite(Hyperlink), Notizen(RichtTextBox).

Wie möchte ich die Elemente z.B. nach dem Titel sortieren können.
 
#4
Gibt es keine weiteren Templates? Sortieren man kann nur mit
Code:
<xsl:apply-templates select="Row">
  <xsl:sort select="@Title"/>
</xsl:apply-templates>
oder
Code:
<xsl:for-each select="Row">
  <xsl:sort select="@Title"/>
  ...
</xsl:for-each>
In deinem geposteten Template sehe ich weder for-each noch apply-templates, um xsl: sort hinzufügen zu können. In dem Template kann man also nichts ändern, um eine Sortierung zu erreichen.