協助工具最佳作法
注意
本文適用於使用 System.Windows.Automation 命名空間定義受控 UI 自動化類別的 .NET Framework 開發人員。 如需 UI 自動化的最新資訊,請參閱 Windows 自動化 API:UI 自動化。
在控制項或應用程式中實作下列最佳做法,可以改善輔助技術裝置使用者的協助工具。 這些最佳做法有許多是著眼於良好的使用者介面 (UI) 設計。 每個最佳做法包含 Windows Presentation Foundation (WPF) 控制項或應用程式的實作資訊。 在許多情況下,符合這些最佳做法的工作已經包含在 WPF 控制項中。
以程式設計方式存取
以程式設計方式存取涉及確保標記所有 UI 元素、公開屬性值,以及引發適當的事件。 對於標準 WPF 控制項而言,已透過 AutomationPeer 完成這項工作的絕大部分。 自訂控制項需要額外的工作,以確保正確實作程式設計方式的存取。
啟用以程式設計方式存取所有 UI 項目和文字
使用者介面 (UI) 元素應該啟用以程式設計方式存取。 如果 UI 是一種標準 WPF 控制項,則控制項中會包含以程式設計方式存取的支援。 如果此控制項為自訂的控制項 (已從通用控制項子類別化或已從控制項子類別化),則您必須檢查可能需要修改的區域之 AutomationPeer 實作。
遵循此最佳做法可讓輔助技術廠商識別及管理您產品的 UI。
在 UI 物件、框架和頁面上放置名稱、標題和描述
輔助技術,尤其是螢幕助讀程式,會在巡覽配置中使用標題來了解框架、物件或頁面的位置。 因此,標題必須具備描述性。 例如若使用者已深入巡覽至某些特定的區域,則「Microsoft 網頁」的網頁標題毫無用處。 描述性的標題對於視力喪失而且依賴螢幕助讀程式的使用者相當重要。 同樣地,對於 WPF 控制項而言,NameProperty 和 HelpTextProperty 對輔助技術裝置很重要。
遵循此最佳做法可讓輔助技術在範例控制項和應用程式中識別及管理 UI。
確定所有 UI 活動都會觸發程式設計事件
遵循此最佳做法可讓輔助技術接聽 UI 中的變更,並通知使用者這些變更。
使用者設定
本節中的最佳做法可確保該控制項或應用程式不會覆寫使用者設定。
遵循所有系統範圍設定並不會干擾協助工具功能
使用者可以使用控制台來設定一些系統範圍的旗標;其他旗標則可透過程式設計方式設定。 不應該由控制項或應用程式變更這些設定。 此外,應用程式必須支援主機作業系統的協助工具設定。
遵循這個最佳做法可讓使用者設定協助工具設定,並了解這些設定不會由應用程式所變更。
視覺 UI 設計
本節中的最佳做法確保控制項或應用程式有效率地使用色彩和影像,而且能夠由輔助技術所使用。
請勿對色彩硬式編碼
色盲、視力不佳或使用黑白螢幕的人可能無法使用色彩為硬式編碼的應用程式。
遵循這個最佳做法可讓使用者根據個人需求調整色彩組合。
支援高對比和所有系統的顯示屬性
應用程式不應中斷或停用使用者選取的系統範圍對比設定、色彩選擇或其他系統範圍的顯示設定和屬性。 使用者採用的系統範圍設定可增強應用程式的可及性,所以應用程式不應停用或忽略它們。 應該在正確的前景背景組合中使用色彩,以提供適當的對比。 請勿混合不相關的色彩,也不要反轉色彩。
許多使用者需要特定的高對比組合,例如在黑色背景上的白色文字。 如在白色背景上的黑色文字一樣反轉繪製,會造成背景滲出到前景,可能會使某些使用者閱讀困難。
確定所有 UI 正確地依 DPI 設定值縮放比例
確定所有 UI 都可以依任何每吋點數 (DPI) 設定正確縮放。 此外,請確定 UI 元素可以納入 1024 x 768 螢幕,每吋 120 點 (DPI)。
導覽
本節中的最佳做法可確保已處理控制項和應用程式的巡覽。
提供所有 UI 項目的鍵盤介面
特別是經過謹慎計劃的定位停駐點,能讓使用者以另一種方式導覽 UI。
應用程式應該提供下列鍵盤介面:
- 使用者可與其互動的所有控制項之定位停駐點,例如按鈕、連結或清單方塊
- 邏輯定位順序
顯示鍵盤焦點
使用者需要知道哪個物件具有鍵盤焦點,這樣他們才可以預期按鍵的效果。 若要醒目提示鍵盤焦點,請使用色彩、字型或圖形,例如矩形或縮放比例。 若要以可聽見的方式提示鍵盤焦點,請變更音量、音高或音調品質。
為了避免混淆,應用程式應隱藏所有視覺焦點指標,以及將位於非使用中視窗 (或窗格) 中的選取項目變暗。
應用程式應以鍵盤焦點執行下列動作:
- 項目應一律具有鍵盤焦點
- 鍵盤焦點應為可見及明顯
- 選取項目及/或具有焦點的項目應該以視覺方式醒目提示
支援巡覽標準和強大的巡覽配置
不同層面的鍵盤導覽提供不同的方式,讓使用者導覽 UI。
應用程式應該提供下列鍵盤介面:
- 所有命令、功能表和控制項的快速鍵及加底線便捷鍵
- 重要連結的鍵盤快速鍵
- 所有功能表項目都有便捷鍵;所有的按鈕都有快速鍵,且所有命令都有快速鍵。
不要讓滑鼠位置干擾鍵盤巡覽
滑鼠位置不應干擾鍵盤巡覽。 例如,如果滑鼠置於某個位置,而且使用者正在以鍵盤導覽,則不應發生滑鼠點選,除非這是由使用者起始的。
多樣式介面
本節中的最佳做法確保應用程式 UI 包含視覺元素的替代方案。
對於非文字項目提供使用者可選取的對等項目
對於每個非文字項目,提供文字、文字記錄或音訊描述之使用者可選取的對等項目,如替代文字、標題或視覺化回饋。
非文字項目涵蓋廣泛的 UI 元素,包含:影像、 影像地圖區域、動畫、Applet、框架、指令碼、圖形按鈕、聲音、獨立的音訊檔及視訊。 當非文字項目包含使用者為了解 UI內容而需存取的視覺資訊、語音或一般音訊資訊時,非文字項目會很重要。
使用色彩,但是也提供色彩的替代方案
請使用色彩來增強及強調,或再次提醒以其他方式顯示的資訊,但請勿單獨使用色彩傳達資訊。 色盲或使用單色顯示器的使用者需要色彩的替代方案。
藉由與裝置無關的呼叫使用標準輸入的 API
與裝置無關的呼叫會確保鍵盤和滑鼠功能相等,同時提供輔助技術關於 UI 的必要資訊。