1

XSLT を使用してリスト ビュー Web パーツのカスタム表示を作成しようとしています。xsl ファイルにリンクし、次のコードを入力しました。

<xsl:stylesheet xmlns:x="http://www.w3.org/2001/XMLSchema" xmlns:d="http://schemas.microsoft.com/sharepoint/dsp" version="1.0" exclude-result-prefixes="xsl msxsl ddwrt" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:asp="http://schemas.microsoft.com/ASPNET/20" xmlns:__designer="http://schemas.microsoft.com/WebParts/v2/DataView/designer" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:SharePoint="Microsoft.SharePoint.WebControls" xmlns:ddwrt2="urn:frontpage:internal" xmlns:o="urn:schemas-microsoft-com:office:office">    
<xsl:template match="/">
    <table class="ms-listviewtable" cellspacing="0" cellpadding="1" width="100%" border="0">     
        <thead>
           <th class="ms-vh2">Title</th>
           <th class="ms-vh2">Status</th>
           <th class="ms-vh2">Percent Complete</th>
        </thead>      
    </table>
</xsl:template>
<xsl:template match="Row">
    <tr>
        <td> 
            <xsl:value-of select="@Title"/> 
        </td> 
        <td> 
            <xsl:value-of select="@Status"/> 
        </td> 
        <td> 
            <xsl:value-of select="@PercentComplete"/> 
        </td> 
    </tr>
</xsl:template>

現時点では見出しのみを表示しています。誰かが私が間違っていることを指摘できますか?

前もって感謝します

4

1 に答える 1

4

Rowテンプレートを呼び出す必要があります。コーディング用語では、Main によって呼び出されることのない Row メソッドが効果的に存在します。

xsl:apply-templatesをルート テンプレートに追加してみてください。

<xsl:template match="/">
    <table class="ms-listviewtable" cellspacing="0" cellpadding="1" width="100%" border="0">     
        <thead>
           <th class="ms-vh2">Title</th>
           <th class="ms-vh2">Status</th>
           <th class="ms-vh2">Percent Complete</th>
        </thead>
        <xsl:apply-templates select="/dsQueryResponse/Rows/Row"/>
    </table>
</xsl:template>
于 2012-05-17T12:35:05.547 に答える