.NET Core 3.0 的 Windows Forms 控制項的協助工具改善
本文內容
Windows Forms 持續改善本身與協助工具技術的搭配運作,為 Windows Forms 客戶提供更良好的支援。 這些改善包括下列變更:
- 與協助工具用戶端應用程式互動的多種領域都有所變更,包括朗讀程式。
- 對可存取階層進行了變更 (改善 UI 自動化樹狀的瀏覽)。
- 鍵盤瀏覽中的變更。
重要
.NET Framework 4.7.1 到 .NET Framework 4.8 所做的協助工具變更會包含在 .NET Core 3.0 和更新版本內,且預設為啟用。 .NET Framework 支援允許應用程式選擇退出新協助工具行為的相容性參數。 而 .NET Core 則不支援這些設定,也不允許應用程式選擇退出協助工具行為。
從 .NET Core 3.0 開始,Windows Forms 應用程式無需額外設定,即可受益於所有新的協助工具功能 (在 .NET Framework 4.7.1 - 4.8 中導入)。
下列變更適用於 ListBox 控制項:
- 已啟用對
ListBox
控制項的 UI 自動化支援。 - 已藉由將 ScrollItemPattern 新增至
ListBox
項目,並強化協助工具事件的引發和處理以及朗讀程式對項目的瀏覽 (Caps Lock 瀏覽不正確,且瀏覽可能會意外脫離控制項),改善了ListBox
協助工具支援。
下列變更適用於 ListBox 控制項:
- 已更正項目的協助工具屬性所提供的
CheckedListBox
界限。 - 已改善整體的
ListBox
和CheckedListBox
協助工具:更正了屬性值和事件模型。
下列變更適用於 ListBox 控制項:
- 已更新相關程序,以利取得
ComboBox
項目的協助工具物件,啟用為項目產生識別碼的功能,而不是從項目取得雜湊碼 (在 GetHashCode 函式遭到覆寫時,此方法可能不安全)。
下列變更適用於 ListBox 控制項:
- 已更正由資料行、資料列、儲存格和對應標頭的協助工具屬性提供的
DataGridView.Bounds
,改善了週框方塊計算的效能。 所有協助工具界限都會正確表示,將整個控制項的界限及其檢視區納入考量。 - 已更正為可存取的用戶端應用程式提供的
Value.IsReadOnly
屬性值。 該屬性現已會顯示儲存格的正確IsReadOnly
狀態。 - 已修正為第一個儲存格變更引發 CellParsing 事件的問題。 儲存格值可以變更而沒有任何問題,包括第一個
DataGridView
控制項互動。 - 已改善使用 Windows 高對比佈景主題時的
DataGridView
背景色彩對比。 已變更使用 HC#1、HC#2 和 HC 黑色佈景主題時的DataGridView
預設背景色彩。
下列變更適用於 ListBox 控制項:
- 已更正由格線項目的協助工具屬性提供的
PropertyGrid.Bounds
,改善了週框方塊計算的效能。 現在,所有協助工具界限都會正確表示,將整個控制項的界限及其檢視區納入考量。 - 已更正子控制項的可存取名稱和描述,使其不包含控制項類型名稱,並且避免重複讀出控制項類型名稱。
下列變更適用於 ListBox 控制項:
- 已改善
ToolStrip
、MenuStrip
和StatusStrip
項目的瀏覽。 已更正ToolStrip
和MenuStrip
shift-tab 瀏覽,在按下 shift-tab 向上鍵時會反向循環功能表項目,而瀏覽至底部功能表元素。 - 已改善
MenuStrip
可存取的導覽,更正了子功能表的功能表可存取控制項類型,使子功能表屬於 'Menu' 類型,而不是 'MenuItem' 類型。
下列變更適用於列印控制項:
- 已改善功能表項目間的可存取瀏覽 (包括朗讀程式瀏覽)。
- 已改善高對比佈景主題支援,並提高控制項元素的對比度。
Windows Forms 設計工具現在使用已改善協助工具支援的字串集合編輯器。
下列變更適用於 ListBox 控制項:
- 已將 UI 自動化伺服器提供者新增至
MonthCalendar
控制項,並新增了 UI 自動化格線模式和資料表模式提供者。 - 已將
MonthCalendar
的資料表可存取控制項類型變更為行事曆可存取控制項類型,但在控制項已有標籤控制項定義了MonthCalendar
控制項可存取名稱時除外;在這種特定情況下,可存取控制項類型會變成資料表。 - 已改善讀出
MonthCalendar
控制項選定日期的表現。 - 已改善螢幕助讀程式和其他協助工具的
MonthCalendar
控制項支援。 現在,使用者可以瀏覽控制項元素,並使用僅限鍵盤輸入與這些元素互動。 使用朗讀程式時,可使用 CAPS + 方向鍵瀏覽控制項元素,並使用 CAPS + Enter 鍵來叫用元素預設動作。 - 已改善在
MonthCalendar
子元素間使用聚焦矩形的方向鍵瀏覽:藍色焦點矩形用於朗讀程式。 - 已改善
MonthCalendar
控制項元素點擊測試動作的協助工具,允許透過提供的座標取得MonthCalendar
可存取子元素。
- 已新增透過螢幕助讀應用程式 (例如 NVDA 和朗讀程式) 讀出工具提示文字的功能。 螢幕助讀應用程式現在可以為任何設定為會顯示工具提示的 Windows Forms 控制項讀出其鍵盤或滑鼠工具提示的文字。
在執行階段會為控制項啟用 UI 自動化支援,但不會在設計階段使用。 如需 UI 自動化的概觀,請參閱 UI 自動化概觀。