在網格中顯示內容查詢 Web 部件的結果 / 表

概述和目標

外框, 苔蘚’ 內容查詢 Web 組件 (CQWP) 其結果顯示在清單格式中, 類似于搜尋結果. 它也是可能以網格格式顯示結果 (e 小節. HTML 表的格式). 柵格格式是在某些情況下更好. 描述了如何實現這種效果在這篇文章.

業務應用場景

有在用戶端與企業級苔蘚推出. 我們已設計及其分類,例如,專案層次結構中的第一類公民,有他們自己的頂層網站. 專案經理保持單身人士清單專案的摘要資訊, 如標題, 預算, 預計的完工日期, 其餘的預算和其他摘要類型欄位. 由"單身" 我的意思是保證包含只有一個專案的自訂 SharePoint 清單. 簡單地, 它看起來像這樣:

圖像

技術方法是多描述的一樣 在這裡 (http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!447.entry). CQWP 使用 XSL 轉換來發出為瀏覽器的 HTML 呈現.

我總是設想結果前潛入 XSL,因為 XSL 是一場噩夢. 這裡是我期望的結果:

圖像

像這樣的 HTML 生成的結果:

<html>
 <正文>
 <中心>
 < 邊框= 1>

<!-- 標籤 — —>
 <tr 背景色= 藍>
 <運輸署><字體 顏色= 白色><b>專案名稱</b></字體></運輸署>
 <運輸署 對齊= 正確><字體 顏色= 白色><b>完成日期</b></字體></運輸署>
 <運輸署 對齊= 正確><字體 顏色= 白色><b>預算</b></字體></運輸署>
 <運輸署 對齊= 正確><字體 顏色= 白色><b>實際費用</b></字體></運輸署>
 <運輸署><字體 顏色= 白色><b>整體狀態</b></字體></運輸署>
 </tr>

<tr>
 <運輸署>重新連接電腦房.</運輸署>
 <運輸署 對齊= 正確>02/01/08</運輸署>
 <運輸署 對齊= 正確>22,500.00</運輸署>
 <運輸署 對齊= 正確>19,000.00</運輸署>
 <運輸署>在進展中</運輸署>
 </tr>

<tr>
 <運輸署>提供伺服器的 SQL 升級</運輸署>
 <運輸署 對齊= 正確>04/01/08</運輸署>
 <運輸署 對齊= 正確>7,500.00</運輸署>
 <運輸署 對齊= 正確>0.00</運輸署>
 <運輸署>計畫</運輸署>
 </tr>

</>
 </中心>
 </正文>
</html>

方法

按照這些步驟來創建網格:

  1. 確定網格的元件 (行/列).
  2. 定義並創建必要的網站列.
  3. 創建子網站,為專案和單身人士名單.
  4. 將 CQWP 添加到 web 頁並將其配置為搜索您的清單.
  5. 修改 CQWP 的 XML 來收集起來的額外的列.
  6. 修改 XSL 生成表.

我要去專注于數位六. 數位從一到四個是直向前和任何 CQWP 使用者已經做的東西. 五號已被證實的其他人包括詳盡螢幕截圖載貨的本文從 MSDN 在這裡 (http://msdn2.microsoft.com/en-us/library/bb897399.aspx) 和希瑟 · 所羅門的博客 在這裡 (http://www.heathersolomon.com/blog/articles/CustomItemStyle.aspx).

螺栓和螺母

開始和執行步驟一到五的 MSDN 文檔和希瑟 · 所羅門條步驟.

在這一點, 向頁面添加了您的 CQWP 和你有你 <CommonViewFields> 根據需要配置.

按照通常的步驟, 拿到這些中間結果:

1. 創建內容類型, 該內容類型和兩個網站範本的自訂清單. 這裡是內容類型:

圖像

這裡是網站結構:

圖像

2. 創建我的專案的子網站和單身人士專案摘要清單後添加 CQWP:

圖像

3. 添加我想要通過的所有其他資訊 <CommonViewFields>:

        <屬性 名稱="CommonViewFields" 類型="字串">Project_x0020_Name;Project_x0020_Expenses;Project_x0020_Status;Project_x0020_Start_x0020_Date;Project_x0020_End_x0020_Date;Project_x0020_Budget</屬性>

請注意,我不得不保持在一個線上或它的所有屬性欄位將不工作 (CQWP 會告訴我,該查詢返回任何專案).

4. 在這一點, 我們準備去超越 MSDN 文章翻到希瑟 · 所羅門的文章. 跟隨她的腳步開始近一步 #5 若要創建一個自訂 / 未託管的版本的 ItemStyle.xsl. 希瑟的聽從, 通過一步了 11 和得到這些中間結果:

4.1: 我的 XSL 範本的名稱,如下所示:

<xsl:範本名稱 ="網格" 匹配 ="行[@Style = 電網]" 模式 ="itemstyle">

她建議,我也略有修改 <xsl:為每個 …> 通過添加 <br /> 標記,以提供一個更清潔的清單:

    <xsl:為每個 請選擇="@*">
      P:<xsl:值的 請選擇="名稱()" /><br/>
    </xsl:為每個>

4.2: 我修改的 web 部件, 轉到外觀並選擇我"網格" 樣式:

圖像

應用更改並在這裡是結果:

圖像

從上面我們可以看到我們希望田野 (專案名稱, 費用, 狀態, 等) 可供我們使用時我們發出的 HTML. 不只如此, 但我們看到,我們必須引用那些列在 XSL 中的名稱. 舉個例子, 我們引用專案的狀態作為"Project_x005F_x0020_Name".

在這一點, 我們離開從希瑟的博客,從這些巨人的肩膀上, 添加我自己一點點.

ContentQueryMain.xsl

請注意: 當對 ContentQueryMain.xsl 以及 ItemStyle.xsl 的更改, 您需要檢查那些檔回之前您看到您的更改的效果.

為網格製作目的, 苔蘚使用兩個不同的 XSL 檔來生成的結果我們看到從 CQWP. 生成輸出的前一位, 我們修改了 ItemStyle.xsl. 苔蘚實際上使用另一個 XSL 檔, ContentQueryMain.xsl 到 ItemStyle.xsl 來生成其 HTML 結合. 正如其名稱所暗示, ContentQueryMain.xsl 是"主" 控制整體液流的翻譯的 XSL. 它遍歷所有找到的項並將它們傳遞到範本逐一在 ItemStyle.xsl. 我們將修改 ItemStyle.xsl 生成開放 <表> 之前發射的第一行的資料並關閉標記 <表> 標記後發出的最後一行. 要做到這一點, ContentQueryMain.xsl 被修改,以將兩個參數傳遞給我們"網格" ItemStyle.xsl 中的範本, "最後一行" 和"當前行". ItemStyle.xsl 使用這些有條件地發出必要的標記.

使用希瑟 · 所羅門的技術, 我們找到 ContentQueryMain.xsl. 它坐落在 ItemStyle.xsl 一樣的地方. 此螢幕擷取畫面應該説明:

圖像

我們需要進行以下更改:

  • 修改 xsl 範本, "CallItemTemplate" 這實際上調用我們在 ItemStyle.xsl 的網格範本. 我們將到網格範本傳遞兩個參數,以便它會有這些資料,它需要有條件地生成打開和關閉 <表> 標籤.
  • 另一位叫"CallItemTemplate 的 ContentQueryMain.xsl 的修改" 把它傳遞"LastRow" 因此,LastRow 可能會轉嫁到我們的網格範本的參數.

找到名為"OuterTemplate.CallItemTemplate 的範本" 由字串標識:

  <xsl:範本 名稱="OuterTemplate.CallItemTemplate">

替換整個範本,如下所示:

  <xsl:範本 名稱="OuterTemplate.CallItemTemplate">
    <xsl:param 名稱="CurPosition" />

    <!--
      添加"LastRow" 參數.
      我們只使用它時專案風格通行證中的"網格".
    -->
    <xsl:param 名稱="LastRow" />

    <xsl:選擇>
      <xsl:當 測試="@Style = 'NewsRollUpItem'">
        <xsl:應用範本 請選擇="." 模式="itemstyle">
          <xsl:與參數 名稱="編輯模式" 請選擇="$cbq_iseditmode" />
        </xsl:應用範本>
      </xsl:當>
      <xsl:當 測試="@Style = 'NewsBigItem'">
        <xsl:應用範本 請選擇="." 模式="itemstyle">
          <xsl:與參數 名稱="CurPos" 請選擇="$CurPosition" />
        </xsl:應用範本>
      </xsl:當>
      <xsl:當 測試="@Style = 'NewsCategoryItem'">
        <xsl:應用範本 請選擇="." 模式="itemstyle">
          <xsl:與參數 名稱="CurPos" 請選擇="$CurPosition" />
        </xsl:應用範本>
      </xsl:當>

      <!--
              將當前的位置和 lastrow 傳遞給網格 itemstyle.xsl 範本.
              ItemStyle.xsl 將會使用,發出打開和關閉 <表> 標籤.
      -->
      <xsl:當 測試="@Style = 電網">
        <xsl:應用範本 請選擇="." 模式="itemstyle">
          <xsl:與參數 名稱="CurPos" 請選擇="$CurPosition" />
          <xsl:與參數 名稱="最後" 請選擇="$LastRow" />
        </xsl:應用範本>
      </xsl:當>

      <xsl:否則>
        <xsl:應用範本 請選擇="." 模式="itemstyle">
        </xsl:應用範本>
      </xsl:否則>
    </xsl:選擇>
  </xsl:範本>

評論描述所做的更改的目的.

答案是肯定的, "OuterTemplate.CallItemTemplate" 本身是從另一個範本調用嗎. 通過搜索此文本字串查找該範本:

<xsl:範本 名稱="OuterTemplate.Body">

滾動流覽 OuterTemplate.Body 中的說明並插入 LastRow 參數,如下所示 (顯示為斜體的注釋):

<xsl:調用範本 名稱="OuterTemplate.CallItemTemplate">
  <xsl:與參數 名稱="CurPosition" 請選擇="$CurPosition" />
  <!-- 插入 LastRow 參數. -->
  <xsl:與參數 名稱="LastRow" 請選擇="$LastRow"/>
</xsl:調用範本>

所有這一切之後, 我們終於有了正確設置,我們 ItemStyle.xsl 可以發出的東西 <表> 在正確的地點標記.

ItemStyle.Xsl

請注意: 再次, 在 ItemStyle.xsl 中進行任何更改,所以,你看到那些更改的效果後檢查.

在這裡,我們有兩個任務:

  • 替換整個網格範本. 你可以複製/粘貼從下面.
  • 添加一些胡言亂語外範本定義,使"formatcurrency" 要工作範本. (你可以告訴我有一個纖細的控制碼在 XSL).

第一次, 靠近頂部的 ItemStyle.xsl, 添加這條線:

  <!-- 一些胡言亂語,使我們能夠顯示美國. 貨幣. -->
  <xsl:十進位格式 名稱="工作人員" 數位="D" />

  <xsl:範本 名稱="預設值" 比賽="*" 模式="itemstyle">

注意直接之前將其添加 <xsl:範本名稱 ="預設" …> 定義.

下一次, 回到我們的網格範本. 用下面的代碼替換整個網格範本. 它是徹底的評論, 但不要猶豫給我發電子郵件或在我的博客留下評論,如果你有問題.

  <xsl:範本 名稱="網格" 比賽="行[@Style = 電網]" 模式="itemstyle">

    <!--
      ContentMain.xsl 通過 CurPos 和最後.
      我們用這些來有條件地發出打開和關閉 <表> 標籤.
    -->
    <xsl:param 名稱="CurPos" />
    <xsl:param 名稱="最後" />

    <!-- 以下變數都是從標準 ItemStyle.xsl 中未被修改 -->
    <xsl:變數 名稱="SafeImageUrl">
      <xsl:調用範本 名稱="OuterTemplate.GetSafeStaticUrl">
        <xsl:與參數 名稱="UrlColumnName" 請選擇="'' ImageUrl"/>
      </xsl:調用範本>
    </xsl:變數>
    <xsl:變數 名稱="SafeLinkUrl">
      <xsl:調用範本 名稱="OuterTemplate.GetSafeLink">
        <xsl:與參數 名稱="UrlColumnName" 請選擇="'' LinkUrl"/>
      </xsl:調用範本>
    </xsl:變數>
    <xsl:變數 名稱="DisplayTitle">
      <xsl:調用範本 名稱="OuterTemplate.GetTitle">
        <xsl:與參數 名稱="標題" 請選擇="@Title"/>
        <xsl:與參數 名稱="UrlColumnName" 請選擇="'' LinkUrl"/>
      </xsl:調用範本>
    </xsl:變數>
    <xsl:變數 名稱="LinkTarget">
      <xsl:如果 測試="@OpenInNewWindow = true" >_blank</xsl:如果>
    </xsl:變數>

    <!--
      在這裡我們定義一個變數, ""tableStart.  這包含的 HTML,我們使用來定義表的列標籤開幕.  請注意,如果 CurPos = 1, 它包括 HTML 在 CDATA 標記.
      否則, 它將為空.

      TableStart 的值是一大,每次通過 ContentQueryMain.xsl 調用 ItemStyle 時.
    -->
    <xsl:變數 名稱="tableStart">
      <xsl:如果 測試="$CurPos = 1">
        <![CDATA[
        <表格邊框 = 1>
          <tr 背景色 ="藍色">
            <運輸署><字體顏色 ="白"><b>專案名稱</b></字體></運輸署>
            <運輸署對齊 ="權利"><字體顏色 ="白"><b>完成日期</b></字體></運輸署>
            <運輸署對齊 ="權利"><字體顏色 ="白"><b>預算</b></字體></運輸署>
            <運輸署對齊 ="權利"><字體顏色 ="白"><b>實際費用</b></字體></運輸署>
            <運輸署><字體顏色 ="白"><b>整體狀態</b></字體></運輸署>
          </tr>
        ]]>
      </xsl:如果>
    </xsl:變數>

    <!--
      另一個變數, tableEnd 只是定義關閉表標記.

      與 tableStart 一樣, 它始終是一大.  這就是為什麼它的值分配有條件地根據是否我們被路過的最後一行 ContentQueryMain.xsl.
    -->
    <xsl:變數 名稱="tableEnd">
      <xsl:如果 測試="$CurPos = $Last">
        <![CDATA[ </表> ]]>
      </xsl:如果>
    </xsl:變數>

    <!--
      總是發出 tableStart 的內容.  如果這不是通過 ContentQueryMain.xsl 傳遞給我們的第一行, 然後我們知道它的值將顯示為空白.

      禁用輸出轉義因為當 tableStart 不空白, 它包括我們要由瀏覽器呈現的實際 HTML.  如果我們不告訴 XSL 解析器來禁用輸出轉義, 它將生成之類"&這是;表&gt;" 而不是"<表>".
    -->
    <xsl:值的 請選擇="$tableStart" 禁用輸出轉義=""/>


    <tr>
      <!--
      P:Project_x005F_x0020_Name P:Project_x005F_x0020_End_x005F_x0020_Date P:Project_x005F_x0020_Budget P:Project_x005F_x0020_Expenses P:Project_x005F_x0020_Status
      -->
      <運輸署>
        <xsl:值的 請選擇="@Project_x005F_x0020_Name"/>
      </運輸署>

      <運輸署 對齊="權利">
        <xsl:值的 請選擇="@Project_x005F_x0020_End_x005F_x0020_Date"/>
      </運輸署>

      <運輸署 對齊="權利">
        <xsl:調用範本 名稱="formatcurrency">
          <xsl:與參數 名稱="價值" 
請選擇="@Project_x005F_x0020_Budget"></xsl:與參數> </xsl:調用範本> </運輸署> <運輸署 對齊="權利"> <xsl:調用範本 名稱="formatcurrency"> <xsl:與參數 名稱="價值" 請選擇="@Project_x005F_x0020_Expenses">
</xsl:與參數> </xsl:調用範本> </運輸署> <運輸署> <xsl:值的 請選擇="@Project_x005F_x0020_Status"/> </運輸署> <!-- 滿足以下所有條件被注釋掉,以澄清事情. 不過, 把它帶回來,塞進 <運輸署> 看看它的效果. --> <!-- <div id ="linkitem" 類 ="專案"> <xsl:如果測試 ="字串長度($SafeImageUrl) != 0"> <div 類 ="圖像-地區-左"> <href ="{$SafeLinkUrl}" 目標 ="{$LinkTarget}"> <img 類 ="圖像-固定寬度" src ="{$SafeImageUrl}"
alt ="{@ImageUrlAltText}"/> </一> </div> </xsl:如果> <div 類 ="連結"> <xsl:調用範本
name="OuterTemplate.CallPresenceStatusIconTemplate"/> <href ="{$SafeLinkUrl}"
目標 ="{$LinkTarget}" 標題 ="{@LinkToolTip}"> <xsl:值的選擇 ="$DisplayTitle"/> </一> <div 類 ="說明"> <xsl:值的 select="@Description" /> </div> </div> </div>
--> </tr> <!-- 發出關閉表標記. 如果我們不是在最後一行, 這將顯示為空白. --> <xsl:值的 請選擇="$tableEnd" 禁用輸出轉義=""/> </xsl:範本> <xsl:範本 名稱="formatcurrency"> <xsl:param 名稱="價值" 請選擇="0" /> <xsl:值的 請選擇='數位格式($價值, "$DDD,DDD,DDD。DD", "工作人員")' /> </xsl:範本>

22 上“的想法在網格中顯示內容查詢 Web 部件的結果 / 表

  1. Andreas

    Aah… 這是因為我以不同的方式命名我的清單樣式並沒有意識到在 ContentQueryMain.xsl 中它會檢查"風格":

    <xsl:當 test="@Style='NameOfMyStyle'">

    它與重命名的工作. 🙂

    答覆
  2. Andreas

    它幾乎為我工作: 我設法輸出 </表> 正確地結束標記, 但起始標記是缺掉的. 看來測試 ="$CurPos = 1" 不會返回 true. 但是,為什麼?

    答覆
  3. 阿南德 · 辛格 · 拉瓦特

    偉大的職位. Paul 我做上面的事情. 我有一個查詢, 如何實現"總實際開支不可隨意的總和" 或兩個列的值的總和.

    答覆
  4. 麗莎

    你做任何工作與創建自訂的 ContentQueryMain 和 ItemStyle xsl 檔了? 我問的原因是我不想擔心我自訂的樣式將被覆蓋任何補丁程式或升級. 你有例子嗎? 我試過 ContentQueryMain.xsl 完全相同的副本並將該新的自訂副本上載到樣式庫. 當在.webpart 的 MainXslLink 屬性中把這個 xsl 檔的引用, 我得到 401 未授權. 自訂 xsl 檔是已發佈的版本,每個人都有對它的讀存取權限.

    答覆
  5. 葛列格 · 謝里登

    你好, 這是一個真正有説明的帖子. 我把它所有的工作, 和也實行的邁克布朗的變化,所以將一組
    裡面的桌子旁無論結果我作為 CQWB 的屬性中的組的參數選擇.
    我也做了標題連結, 所以它很好地工作. 我仍然有一個問題, 雖然. 我按網站名稱分組結果. 在表格內, 它很好地組合它們, 它看起來不錯, 但它仍然是列印出所有的組
    名稱(在我的例子中的網站名稱) 表的上方. 有誰知道如何擺脫這些?
    謝謝,
    葛列格 ·

    答覆
  6. 沒有名稱

    好文章. 我設法給我的表的預設 Sharepoint 清單的外觀通過分析清單中的原始程式碼. 這裡是需要在 ItemStyle 中適合的主要 HTML 塊:

    <表格寬度 ="100%" 類 ="ms listviewtable" 邊境 = 0 空隙 = 0 中 = 1 dir ="None">

    <!–標題–>
    <TR 類 ="ms viewheadertr" 底邊對齊 = 頂部>
    <TH nowrap 範圍 ="col" 類 ="ms-vh2"><div 樣式 ="寬度:100%;位置:相對;左:0;返回頁首:0;">
    <表樣式 ="寬度:100%;" CtxNum ="1" 高度 ="100%" 格 = 1 中 = 0 類 ="ms-unselectedtitle">
    <TR>
    <TD 寬度 ="100%" 類 ="ms vb" nowrap>
    富有杜效價 ici

    </TD>
    <TD 樣式 ="位置:絕對;">
    </TD>
    </TR>
    </表></div>
    </TH>

    <!–對於所有標頭儲存格重複–>
    </TR>

    <!– 表資料 –>
    <TR 類 ="">
    <!–資料列, 第一次與超連結使用 Paul 的代碼 –>
    <TD 類 ="ms vb2">資料在這裡</TD>

    <!–空列–>
    <TD 類 ="ms vb2">
    <大跨度 dir = 無></大跨度><
    /TD>

    <!–日期列–>
    <TD 類 ="ms vb2">
    <NOBR>11/12/2008</NOBR>
    </TD>
    </TR>

    <!–***可選行 – 使用將插入基於模 2 的當前行的交替類的一個新的 XSL 變數–>
    <TR 類 ="ms 交替">

    </TR>
    </表>

    答覆
  7. 邁克-布朗
    佐爾坦,
    我正在和你同樣的問題. 我想我所有的專案都顯示在分組的方式,而不是只是 lits. 這裡是我如何實現它.
    ContentQueryMain.xsl
    <xsl:當 test="@Style='Grid'">
    <xsl:應用範本選擇 ="。" 模式 ="itemstyle">
    <xsl:與參數名稱 ="CurPos" 選擇 ="$CurPosition" />
    <xsl:與參數名稱 ="最後一" 選擇 ="$LastRow" />
    <!–添加此新的部分,要傳遞的參數,指示新的組已經開始–>
    <xsl:與參數名稱 ="StartNewGroup" select="@__begingroup" />
    </xsl:應用範本>
    </xsl:當>
    ItemStyle.xsl
    添加您的參數
    <xsl:參數名稱 ="StartNewGroup"/>
    將此文本添加作為資料的第一行
    <xsl:選擇>
    <xsl:當測試 ="$StartNewGroup = True">
    <tr>
    <運輸署 >
    <xsl:調用範本 name="OuterTemplate.GetGroupName">
    <xsl:與參數名稱 ="組名" select="@*[名稱()$Group =]"/>
    <xsl:與參數名稱 ="GroupType" 選擇 ="$GroupType"/>
    </xsl:調用範本>
    </運輸署>
    </tr>
    </xsl:當>
    <xsl:否則>
    </xsl:否則>
    </xsl:選擇>
    這應該照顧您在您的網格中的分組問題. 每個組現在將開始新的一行指明組名稱與. 我的解決方案我實際上加了一片空白 <td /> 這樣也縮進它的資料中分組站出來更好.
    上門 1
    datacolumn1 datacolumn2 datacolumn3 等

    datacolumn1 datacolumn2 datacolumn3 等
    上門 2
    datacolumn1 datacolumn2 datacolumn3 等
    Site3

    datacolumn1 datacolumn2 datacolumn3 等

    datacolumn1 datacolumn2 datacolumn3 等
    等.
    答覆
  8. 佐爾坦
    你好保羅,
    感謝您的職位, 我設法安排我在網格中的查詢結果, 這是很有説明. 不過, 我應該去進一步和組我基於網站的結果. 那一刻, 首先列出了網站名稱, 然後是這個只有一個大的網格,從不同的網站上收集的所有行. 就像這個樣子:
    Site1 名稱
    上門 2 名稱
    在網格中的所有網站資料
    任何想法上我應該修改才能得到我的資料,如下所示:
    Site1 名稱
    為 Site1 網格中的資料
    上門 2 名稱
    對於上門 2 網格中的資料
    謝謝,
    佐爾坦
    答覆
  9. Pierre 茹貝爾
    精彩絕倫的帖子, 解決了我遇到的問題.
    我唯一的問題顯示分配給欄位, "使用者配置" 欄位類型和導入 web 部件然後顯示以下錯誤:
    "沒有檢索要在此 Web 組件中顯示的資料時出錯。"
    我已經試過所有可能的欄位類型, 與任何其他使用者"" 它不會顯示錯誤, 但是它不顯示任何欄位中. 所以我假設使用者欄位類型正確, 所以我一定遺漏了一個設置在某個地方.
    任何對此的想法?
    問候
    Pierre
    答覆
  10. Charftong
    偉大的職位!!! 非常非常有説明.
    簡短的問題。, 你已經做了將分配給或 ModifiedBy 的欄位顯示存在任何工作嗎? 因為某些原因, 每當我試著去 dipslay CQWP 中的指派給欄位, 它始終顯示為帶為例"203;#沙爾夫通". 我找不到解決的辦法.
    答覆
  11. 詹妮弗 Davis
    保羅 ·
    大文章, 謝謝. 我正在做一些非常類似,但要顯示連結到該專案網站,而不是清單中的項. 舉個例子, 我們有 25 最高級別專案網站和每個包含的內容類型的清單. 這些都是專案名稱, 司, 說明. 我想要使用內容查詢 web 部件來提取此資料和已成功只是在預設情況下該 URL 將我帶到清單中的項條目,我真的需要它要帶我去專案工地. 你能給我任何建議嗎?
    謝謝
    答覆
  12. 保羅 · 高爾文
    基倫,
    我總是使用 visual studio 編輯 XSL,. 它提供了彩色編碼,它也有一些好的智慧感知支援.
    –保羅 ·
    答覆
  13. 基蘭寫道::

    嗨保羅,

    當使用 xml/xsl 和內容查詢 web 部件, 你找到好的方法來設置您的 xslt 的格式嗎? 試圖更改和設計的測試證明正確的疼痛的 * * 只使用一個文字編輯器…

    所有最好的

    答覆
  14. Michael Dipay
    關於這個問題我在最後一次在那裡但不顯示圖像從網格視圖相反顯示的文本 (https://myweb.com/Marketing/images/icn-order.gif,). 我設法解決它的説明下 SharePoint 設計器創建自訂視圖並選擇我想要顯示的自訂列. 我發現圖像的列類型如下所示的 URL(逗號) (例如:. https://myweb.com/Marketing/images/icn-order.gif,). 當前格式為文本格式, 所以我不得不將它更改為圖片從常見的 xsl:值的任務 — —> 作為圖片的格式. 這種變化對我想要顯示的自訂圖像顯示. 我複製了要顯示的圖像的代碼 ( <img 邊境 ="0" src ="{子字串-前(@IcnOrder, ‘, ‘)}" /> ) 在 ItemStyle.xsl 檔中,我不得不改變 @PICTURECOLUMNNAME 的代碼 <img 邊境 ="0" src ="{子字串-前(@IcnOrder, ‘, ‘)}" /> . 然後將它保存. 現在我的表網格結果顯示文本,以及自訂圖像類型列.
    答覆
  15. 海倫
    嗨保羅,
    感謝偉大的文章!
    你提到的條件格式 – "你也可以放在條件格式, 如顯示已超出他們在紅色的預算的專案。" 你碰巧有一個代碼示例的嗎?
    再次感謝!
    海倫
    答覆
  16. Michael Dipay
    嗨保羅,
    它是一篇好文章,能夠按預期產生相同的結果. 我有一個要求,作為其中一列的網格中顯示的圖像. 它不在網格上顯示圖像,但相反的形象與顯示的 url (,) 在結束了逗號.
    (例如:. https://myweb.com/Marketing/images/icn-order.gif, )
    我應該使用圖像或圖片在 CommonViewFields 欄位類型? (例如:. InternalColumnName, 圖像)
    謝謝,
    邁克
    答覆
  17. Saji Ijiyemi

    您的帖子正是我要找的東西. 不過, 我不能讓它工作.

    我有各種文檔中存儲的文檔. 存儲庫,但分類使用自訂類列 (選擇: 1 或 2. 我想要使用 CQWP 來顯示這些檔基於他們班.
    我是能夠添加 CQWP, 將其匯出到 SPD, 配置 itemStyle.xls 在清單視圖中顯示自訂領域. 然而, 我不能成功地執行你在這裡描述.

    這些都是我想要在我的 CQWP 中顯示的列:

    檔案類型 (顯示圖示)
    檔標題
    上次修改日期
    由誰修改
    簽出給
    簽入注釋

    目前在清單格式的結果. 它為檯面的格式如何更改.

    謝謝.

    Saji

    答覆

離開一個答覆 Saji Ijiyemi 取消回复

您的電子郵件地址不會被公開. 必需的地方已做標記 *