Win8 App 預設的範本沒有辦法用「觸控」選取?用「滑鼠」卻可以?IsSwipeEnabled 屬性
怎麼用觸控的選取?
平常我們都習慣用 mouse 對於選取 (select) 都會直接在 Item 上按「右鍵」就可以達成了
而在 Win 8 觸控的選取則是按住 Item 後再直接往下拖拉,來達成 Select 的效果
所有 GridView 的選取機制都一模一樣沒有例外
滑鼠可以選取 觸控卻無法選取的怪異現象
通常我們會很直覺地將 SelectionMode 的功能開啟 ( 如上 )
但這個時候卻會發現,滑鼠可以選取 觸控卻無法選取的怪異現象
觸控和滑鼠的觸發行為不同
這是因為 GridView 本身有提供 選取機制了,自然在 滑鼠按下右鍵時就立即觸發。
那為什麼 觸控不行?一開始也說明了 觸控選取的機制是往下拉選取的。觸發的行為不一樣
為了避免 GridView 明明不能提供選取的機制,但卻又讓使用者出現可以「往下拖拉」的效果而造成使用者的誤會
所以 GridView 本身又多提供了 IsSwipeEnabled 的屬性來做判斷。 (預設是開啟的)
所以只要 SelectionMode = None ,那麼 IsSwipeEnabled 也要跟著調整為 False 。
讓使用者無論用 滑鼠 和 觸控都無法選取
反之,要選取的話就兩者都要開啟才不會有問題!
另外,有看過某些的 app 為了解決這個問題硬是 override 掉觸發行為,這一點其實是不太建議的
因為某些頁面的操作行為就會不太一致