我近兩日正在對所寫的第一個版本進行重構,其間又發現了兩個設計原則:
4、 可以用一個dictionary<String, AutomationElement>來保存找到的控件;其中String記錄找到控件的full-path name,比如NotepadWin.File.Save;
5、 對於從根目錄搜索的控件的full-path name的寫法,可以借用*。例如保存文件時,相同位置已經存在同名文件,這時候會有一個確認是否覆蓋的對話框,可以是Notepad.*.ConfirmYesButton來代表對話框中Yes按鈕;
6、 控件搜索可以分爲按AutomationID搜索,和按Name搜索;但是如果組合AutomationID和Name進行搜索,效果會更好;
重構之後的代碼,應該可以工具小軟件的初始代碼了,而不只是Demo.但要想成爲發佈軟件的,代碼還要繼續重構,呵呵。