附註: 我們想要以您的語言,用最快的速度為您提供最新的說明內容。 本頁面是經由自動翻譯而成,因此文中可能有文法錯誤或不準確之處。讓這些內容對您有所幫助是我們的目的。希望您能在本頁底部告訴我們這項資訊是否有幫助。 此為 英文文章 出處,以供參考。
階層式清單方塊可協助使用者快速填寫表單,並協助確保使用者輸入正確的資料。本文將說明如何建立和填入資料的階層式清單方塊。在 Microsoft Office InfoPath,您可以填入資料使用的表單、 外部的可延伸標記語言 (XML) 文件中的值或 Microsoft Office Access 資料庫中的值的值的清單。
本文內容
什麼是階層式清單方塊?
階層式清單方塊是清單方塊和選項的變更會根據使用者選取另一個清單方塊中的值。例如,如果使用者按一下調味品顯示下列圖例中的 [類別] 方塊中,[產品] 方塊會顯示調味品清單。
下列各節說明您設計表單範本的兩個清單] 方塊中,第二個清單方塊篩選的位置使用者從 [第一個 [清單] 方塊中選取的值。第一份清單方塊中的值變更時,篩選會自動套用至第二個清單方塊,可變更其值。
相容性注意事項
篩選只能用於設計用來在 InfoPath 中填寫的表單範本。篩選器無法在瀏覽器相容表單範本中。
步驟 1: 插入階層式清單方塊
若要建立階層式清單方塊,您必須在表單範本中插入兩個清單方塊。
附註: 當您在表單範本中插入階層式清單方塊時,請確定兩個清單方塊沒有重複區段或重複表格文件中。
-
如果沒有看到 [控制項] 工作窗格,請按一下 [插入] 功能表上的 [其他控制項],或按 ALT+I、C。
-
在 [控制項] 工作窗格中,插入控制項,請按一下 [下拉式清單方塊。當使用者填寫表單範本為基礎的表單時,在下拉式清單方塊中的選取項目會決定都可在 [第二個 [清單] 方塊中的選項。
-
按一下 [清單方塊]。下拉式清單方塊和標準的清單方塊,現在應該會包含您的表單範本。
-
按兩下您在步驟 2 中的表單範本中插入下拉式清單方塊。
-
在下拉式清單內容] 對話方塊中,按一下 [資料] 索引標籤。
-
在 [欄位名稱] 方塊中,輸入清單方塊 1,然後再按一下[確定]。
-
按兩下您在步驟 3 中的表單範本中插入清單方塊。
-
在 [清單方塊屬性] 對話方塊中,按一下 [資料] 索引標籤。
-
在 [欄位名稱] 方塊中,輸入2 階層式,然後再按一下[確定]。
步驟 2: 提供的資料
現在,您插入的清單方塊的表單範本,您必須提供的資料,他們會顯示。然後您必須先套用篩選 ,以便在第二個 [清單] 方塊中的選項會根據使用者的選取範圍中第一個清單方塊。
本節說明如何連線至資料的清單方塊,藉由三個常見的方法: 新增資料至表單本身。將表單連線到現有的 XML 文件包含的資料。或連線到包含資料的資料庫的表單。若要完成建立階層式清單方塊中,按一下您想要使用下列清單中的方法。
連線至表單中的資料
在此區段中,您將學習如何填入清單方塊,以從表單的資料。若要這麼做,您必須先設定欄位中的表單範本,讓您可以輸入的類別名稱,以及一組產品的每一個類別。
設定表單範本中的欄位
-
如果看不到 [資料來源] 工作窗格,請按一下 [檢視] 功能表上的 [資料來源]。
-
在 [資料來源] 工作窗格中, myFields ] 群組中,以滑鼠右鍵按一下,然後再按一下 [新增。
-
在 [名稱] 方塊中,在 [新增欄位或群組] 對話方塊中,輸入類別與產品。
-
在 [類型] 清單中,按一下 [群組]。
-
選取 [重複] 核取方塊,然後再按一下[確定]。
-
在 [資料來源] 工作窗格中,以滑鼠右鍵按一下 [類別與產品] 群組。
-
在 [名稱] 方塊中新增欄位或群組] 對話方塊中,輸入類別],然後按一下[確定]。此欄位會包含第一個清單方塊的類別名稱。
-
類別與產品] 群組中,以滑鼠右鍵按一下,然後按一下 [新增]。
-
在 [名稱] 方塊中,在 [新增欄位或群組] 對話方塊中,輸入產品。
-
選取 [重複] 核取方塊,然後再按一下[確定]。此欄位會包含產品名稱的第二個 [清單] 方塊。
此清單方塊會填入表單的資料,因為必須新增資料至表單。若要執行這項作業,您必須建立產品和類別欄位的預設值。
秘訣
您也可以建立清單方塊顯示使用者在表單中輸入自己的值。若要這麼做,關聯欄位繫結至表單中的控制項中的 [清單] 方塊。當使用者輸入控制項的值時,便會變更 [清單] 方塊中的選項。
建立預設值
-
在 [工具] 功能表上按一下 [預設值]。
-
在 [類別與產品] 群組中的 [編輯預設值] 對話方塊中選取 [ Category ] 欄位 (不要清除核取方塊),然後在 [預設值] 方塊中輸入 [海鮮。
-
選取 [產品] 欄位 (不要清除核取方塊),然後在 [預設值] 方塊中輸入 [蟹肉。
-
[產品] 欄位中,以滑鼠右鍵按一下,然後按一下 [新增上面的其他產品。這個選項可讓您新增第二個產品的海鮮做為預設值。
-
以滑鼠右鍵按一下 [產品] 欄位的第二個執行個體 (執行清除核取方塊),然後在 [預設值] 方塊中輸入 [鮭魚。
-
類別與產品] 群組中,以滑鼠右鍵按一下,然後按一下 [新增另一個類別與產品下方。這個選項可讓您新增第二個類別做為預設值。
-
若要指定香蕉、切達乾酪,及巧克力牛奶類別及產品欄位的第二個執行個體的預設值,分別使用上述步驟。
-
按一下 [確定]。
現在,您的產品和類別欄位輸入預設值,您可以連線到您剛剛輸入的資料的第一個清單方塊。
連線至資料的第一個清單方塊
-
在表單範本中,按兩下您在先前所插入的下拉式清單方塊。
-
按一下 [資料] 索引標籤。
-
在下拉式清單方塊屬性] 對話方塊中,在清單方塊項目,按一下 [查詢表單的資料來源中的值。
-
按一下 [選取 XPath項目] 方塊旁邊。
-
在 [選取欄位或群組] 對話方塊中 [類別與產品] 群組中,按一下 [類別] 欄位中,然後再按兩次[確定] 。
現在您必須連線第二個清單方塊的資料。在進行此資料連線時,您會想要將篩選套用至第二個 [清單] 方塊。這個篩選器會填入第二個清單方塊與適當的產品,根據在第一個清單方塊中選取的類別。篩選會比較第一個清單方塊 (清單方塊 1] 欄位) 的清單表單 ([類別] 欄位) 中所儲存的類別中選取的值。
連線至資料的第二個清單方塊
-
在表單範本中,按兩下您在先前所插入的標準清單方塊。
-
按一下 [資料] 索引標籤。
-
在清單方塊屬性] 對話方塊中,在清單方塊項目,按一下 [查詢表單的資料來源中的值。
-
按一下 [選取 XPath項目] 方塊旁邊。
-
在 [選取欄位或群組] 對話方塊中 [類別與產品] 群組中,按一下 [產品] 欄位,然後按一下篩選的資料。
-
在 [篩選資料] 對話方塊中,按一下 [新增]。
-
在 [指定篩選條件] 對話方塊中,按一下第一個方塊中的 [選取欄位或群組。
-
在 [選取欄位或群組] 對話方塊中,按一下 [清單方塊 1,,然後按一下[確定]。
-
在 [指定篩選條件] 對話方塊中,按一下 [第三個方塊中的 [選取欄位或群組。
-
在 [選取欄位或群組] 對話方塊中,按一下 [類別] 欄位,然後按一下[確定] 以關閉所有開啟的對話方塊。
現在您已連線到資料的第二個 [清單] 方塊,並套用篩選,您有要測試的清單方塊,以確定其運作正常。
測試的清單方塊
-
若要測試變更,請按一下 [標準] 工具列上的 [預覽],或按 CTRL+SHIFT+B。
-
在下拉式清單方塊中,按一下 [海鮮]。一般清單方塊應該會顯示空白行、蟹肉,以及鮭魚。
附註: 空白的行中,可讓使用者清除他們的選擇,從 [清單] 方塊。
如果無法正確運作的清單方塊,檢閱的篩選,第二個清單方塊,請確定它比較具有類別欄位的清單方塊 1 ] 欄位。
連線至外部 XML 文件
在此區段中,您將學習如何建立 XML 文件包含產品和類別值的資料連線。XML 文件會次要資料來源。若要建立這個資料連線,您必須建立 XML 文件與表單範本中的清單方塊與 XML 文件中,然後將篩選套用至第二個 [清單] 方塊,以便產品清單適當地變更。
您可以與次要資料來源建立關聯表單之前,您必須建立 XML 文件。
建立 XML 文件
-
啟動 [記事本] 或另一個文字編輯器。
-
複製並貼上下列的 XML 資料在文字編輯器中:
<?xml version="1.0" encoding="UTF-8"?>
<ListBoxData> <CategoriesAndProducts> <Categories>Seafood</Categories> <Products> <Product>Crab meat</Product> </Products> <Products> <Product>Salmon</Product> </Products> </CategoriesAndProducts> <CategoriesAndProducts> <Categories>Dairy</Categories> <Products> <Product>Chocolate milk</Product> </Products> <Products> <Product>Cheddar</Product> </Products> </CategoriesAndProducts> </ListBoxData> -
將您的電腦上的檔案儲存為listBoxData.xml。
現在,您必須建立 XML 文件,可以將它連接至表單範本。這會建立次要資料來源。
XML 文件連接到表單範本
-
在 [工具] 功能表上按一下 [資料連線]。
-
在 [資料連線] 對話方塊中,按一下 [新增]。
-
在 [資料連線精靈中,按一下接收資料],然後按 [下一步。
-
在精靈的下一個頁面上,按一下 [ XML 文件,然後再按 [下一步。
-
在精靈的下一個頁面上,依序按一下 [瀏覽],[ listBoxData.xml檔案儲存至您的電腦,然後按一下 [開啟。
-
在精靈的下一個頁面上,按一下包含為資源檔案的表單範本或範本組件中的資料],然後按 [下一步。
-
在 [輸入此資料連線名稱] 方塊中,在精靈的下一個頁面上輸入listBoxDataXMLFile。
-
選取 [自動擷取資料表單開啟時,核取方塊。如此一來,可確保清單方塊資料可的每次開啟表單,而不是查詢,使用者需要它。
-
按一下 [完成]。
-
在 [資料連線] 對話方塊中,按一下 [關閉]。
現在您已經準備好要連線到 XML 文件中的資料的第一個的 [清單] 方塊中的表單範本。
連線至資料的第一個清單方塊
-
在表單範本中,按兩下您在先前所插入的下拉式清單方塊。
-
按一下 [資料] 索引標籤。
-
在下拉式清單方塊屬性] 對話方塊中,在清單方塊項目,按一下 [查詢外部資料來源的值]。
-
在 [資料來源] 方塊中,按一下 [ listBoxDataXMLFile。
-
按一下 [選取 XPath項目] 方塊旁邊。
-
在 [選取欄位或群組] 對話方塊中 [類別與產品] 群組中,按一下 [類別] 欄位。
附註: 在 [選取欄位或群組] 對話方塊中的黃色背景表示您正在使用的次要資料來源。
-
按兩次 [確定]。
現在,您必須連線至 XML 文件的第二個 [清單] 方塊。在進行此資料連線,您會想要將篩選套用至第二個 [清單] 方塊。這個篩選器會填入第二個清單方塊與適當的產品,根據在第一個清單方塊中選取的類別。篩選會比較第一個清單方塊 (清單方塊 1] 欄位) 的清單表單 ([類別] 欄位) 中所儲存的類別中選取的值。
連線至資料的第二個清單方塊
-
在表單範本中,按兩下您在先前所插入的標準清單方塊。
-
按一下 [資料] 索引標籤。
-
在清單方塊屬性] 對話方塊中,在清單方塊項目,按一下 [查詢外部資料來源的值]。
-
在 [資料來源] 方塊中,按一下 [ listBoxDataXMLFile。
-
按一下 [選取 XPath項目] 方塊旁邊。
-
在 [選取欄位或群組] 對話方塊中 [類別與產品] 群組中,展開 [產品] 群組,然後按一下 [產品] 欄位。
-
按一下 [篩選資料。
-
在 [篩選資料] 對話方塊中,按一下 [新增]。
-
在 [指定篩選條件] 對話方塊中,按一下第一個方塊中的 [選取欄位或群組。
-
在 [資料來源] 方塊中選取欄位或群組] 對話方塊中,按一下 [主要]。
-
按一下 [清單方塊 1,然後再按一下[確定]。
-
在 [指定篩選條件] 對話方塊中,按一下 [第三個方塊中的 [選取欄位或群組。
-
在 [資料來源] 方塊中選取欄位或群組] 對話方塊中,按一下listBoxDataXMLFile (次要),並按一下類別。
-
按一下 [確定] 以關閉所有開啟的對話方塊。
現在您已經連線到 XML 文件的第二個 [清單] 方塊,套用篩選,您有要測試的清單方塊,以確定其運作正常。
測試的清單方塊
-
若要測試變更,請按一下 [標準] 工具列上的 [預覽],或按 CTRL+SHIFT+B。
-
在下拉式清單方塊中,按一下 [海鮮]。一般清單方塊應該會顯示空白的列、 [蟹肉] 和 [鮭魚。
附註: 空白的行中,可讓使用者清除他們的選擇,從 [清單] 方塊。
如果無法正確運作的清單方塊,檢閱的篩選,第二個清單方塊,請確定它比較具有類別欄位的清單方塊 1 ] 欄位。
連線至資料庫
在此區段中,您將學習如何在 Access 資料庫中建立兩個資料表的資料連線。若要這麼做,您可以與資料庫建立關聯中的表單範本的清單方塊,並讓適當地顯示在第二個方塊中變更清單中的清單會根據選取第一個清單方塊中的值,然後將篩選套用至第二個 [清單] 方塊。此範例中,我們將假設 Access 資料庫,包含稱為 「 類別及產品 」 的兩個資料表和 [CategoryID] 欄位,每個資料表中使用將兩個資料表相關彼此。
類別] 表格
先根據 [CategoryID |
類別名稱 |
1 |
海鮮 |
2 |
乳品 |
產品] 資料表
產品識別碼 |
先根據 [CategoryID |
ProductName |
1 |
1 |
蟹肉 |
2 |
1 |
鮭魚 |
3 |
2 |
巧克力牛奶 |
4 |
2 |
切達乾酪 |
連線到資料來源的表單範本
首先,您必須在資料庫中建立的表單範本與資料表之間的資料連線。因為您只顯示,而不是直接,修改的資料庫中的資料的 Access 資料庫會次要資料來源的表單範本。
-
在 [工具] 功能表上按一下 [資料連線]。
-
在 [資料連線] 對話方塊中,按一下 [新增]。
-
在 [資料連線精靈中,按一下接收資料],然後按 [下一步。
-
在精靈的下一個頁面上,按一下資料庫 (Microsoft SQL Server 或 Microsoft Office Access 只)],然後按 [下一步。
-
在精靈的下一個頁面上,按一下 [選取資料庫],然後瀏覽至並按兩下您硬碟上的 Access 資料庫。
-
在 [選取表格] 對話方塊中,按一下包含您想要的第一個清單 (在此範例中,[類別] 資料表),顯示資料的資料表,然後按一下[確定]。此資料連線的主要資料表中指定的資料表。
-
在精靈中,按一下 [新增資料表]。
-
在 [新增資料表或查詢] 對話方塊中,按一下包含您想要顯示在第二個 (在此範例中,[產品] 資料表),清單中的資料的資料表,然後按 [下一步。
-
在 [編輯關聯] 對話方塊中,確認連接欄位正確無誤。在此範例中,資料表的相互關聯類別編號] 欄位。
提示: 如果連線的欄位不正確,請選取欄位,然後按一下 [移除關聯。按一下 [新增關聯、 選取正確的欄位,然後再按一下[確定]。
-
按一下 [完成]。
附註: 在此範例中,[類別] 表格會有 [產品] 資料表,這表示,則表示每一個類別可能會有許多產品一對多關聯性。在資料庫中,這種關聯通常會建立使用索引鍵欄位。在此情況下,先根據 [CategoryID 索引鍵欄位可讓您存取關聯的適當類別中的一組正確的產品。
-
在精靈中,檢閱的資料來源結構。您應該會看到連接的兩個資料表: 主要和次要的資料表。若要查看的資料表中的個別欄位,選取 [顯示資料表的資料行] 核取方塊。當您完成檢閱資料結構,請按一下 [下一步]。
-
清除儲存一份表單範本中的資料] 核取方塊,然後再按 [下一步]。
-
在 [輸入此資料連線名稱] 方塊中,在精靈的下一個頁面上輸入的資料連線的名稱。
-
選取 [自動擷取資料表單開啟時,核取方塊。
-
按一下 [完成],然後按一下 [關閉[資料連線] 對話方塊中。
連線至資料的第一個清單方塊
現在,您必須建立次要資料來源的資料連線,您可以連線至資料庫中的資料表的第一個的 [清單] 方塊中的表單範本。
-
在表單範本中,按兩下您在先前所插入的下拉式清單方塊。
-
按一下 [資料] 索引標籤。
-
在下拉式清單方塊屬性] 對話方塊中,在清單方塊項目,按一下 [查詢外部資料來源的值]。
-
在 [資料來源] 方塊中,請確定已選取您所建立的資料連線。
-
按一下 [選取 XPath項目] 方塊旁邊。
-
在 [選取欄位或群組] 對話方塊中,按一下包含您想要顯示在 (在此範例中, d: 類別),下拉式清單中的資料之資料表的名稱,然後按一下[確定]。
附註: 在 [選取欄位或群組] 對話方塊中的黃色背景表示您正在使用的次要資料來源。
-
按一下 [選取 XPath[值] 方塊旁邊。
-
在 [選取欄位或群組] 對話方塊中,請確定 [連線] 欄位 (在此範例中, : 先根據 [CategoryID) 已選取,然後再按一下[確定]。這是使用者時,清單方塊中選取項目會儲存的值。
-
按一下 [選取 XPath旁顯示名稱] 方塊。
-
在 [選取欄位或群組] 對話方塊中,按一下您想要顯示在下拉式清單的欄位名稱 (在此範例中, : 類別名稱)。
-
按兩次 [確定]。
連線至資料的第二個清單方塊
現在,您必須連線至資料庫的 [第二個 [清單] 方塊。在進行此資料連線,您會想要將篩選套用至第二個 [清單] 方塊。這個篩選器會填入第二個清單方塊以適當的值,在第一個清單方塊中選取的值。
-
在表單範本中,按兩下標準] 清單方塊。
-
按一下 [資料] 索引標籤。
-
在清單方塊屬性] 對話方塊中,在清單方塊項目,按一下 [查詢外部資料來源的值]。
-
在 [資料來源] 方塊中,請確定已選取您所建立的資料連線。
-
按一下 [選取 XPath項目] 方塊旁邊。
-
在 [選取欄位或群組] 對話方塊中,展開 (在此範例中, d: 類別),[主要] 群組,然後按一下對應至資料表,其中包含您要在階層式清單方塊 (在此顯示資料的第二個群組例如,產品)。
-
按一下 [篩選資料。
-
在 [篩選資料] 對話方塊中,按一下 [新增]。
-
在 [指定篩選條件] 對話方塊中,在第一個方塊中,請確定已選取 [從 (在此範例中,產品),第二個資料表的連接欄位。
重要: 如果連線的欄位有兩個資料表中的相同的名稱,請確定已選取正確的項目。在清單中,每個資料表的欄位會排序在一起。因此,您可以使用周圍的欄位名稱,以判斷其正確。在此範例中,我們可以選取 [CategoryID] 欄位顯示與其他欄位從 [產品] 資料表。
-
在第三個方塊中,按一下 [選取欄位或群組]。
-
在 [資料來源] 方塊中選取欄位或群組] 對話方塊中,按一下 [主要,按一下 [清單方塊 1 ] 欄位中,,然後按一下[確定]。
您現在已設定篩選比較的標準清單方塊中的值清單中選取 [在下拉式清單方塊 (清單方塊 1] 欄位) 中的值。
-
按三次[確定] ,返回 [清單方塊屬性] 對話方塊。
-
按一下 [選取 XPath[值] 方塊旁邊。
-
在 [選取欄位或群組] 對話方塊中,選取您想要儲存時的使用者進行選取清單方塊中的值。在此範例中,我們要儲存以供日後使用的 [產品識別碼] 欄位。因此,選取: ProductID分組,然後按一下[確定]。
-
按一下 [選取 XPath旁顯示名稱] 方塊。
-
在 [選取欄位或群組] 對話方塊中,按一下您想要顯示在清單方塊中的欄位名稱 (在此範例中, : ProductName)。
-
按兩次 [確定]。
測試的清單方塊
現在您已連線至資料庫的 [第二個 [清單] 方塊,並套用篩選,您有要測試的清單方塊,以確定其運作正常。
-
若要測試變更,請按一下 [標準] 工具列上的 [預覽],或按 CTRL+SHIFT+B。
-
在下拉式清單方塊中選取的值。一般清單方塊應該會顯示適當的值,從第二個資料表中,根據您所選擇的連接欄位。
提示: 如果無法正確運作的清單方塊,檢閱的篩選,第二個清單方塊,請確定它比較與先根據 [CategoryID ] 欄位的清單方塊 1 ] 欄位。