當WPF TabControl具有焦點時,可以使用箭頭鍵切換活動選項卡。但是,在到達最終選項卡後,它會再次循環回第一個選項卡。我想阻止這種情況發生,因此用戶可以在應用程序中獲得更多應該做的事情。 任何想法?謝謝。TabControl循環回第一個選項卡。這可以防止嗎?
回答
我試過這個使用SelectionChanged事件的相當嚴厲的方法。除了在「loginTab」條目上仍然顯示虛線焦點指示符,即使TabControl繼續按照預期顯示「lastTab」,它也能完成這項工作。 Focus()調用不關注最後一個選項卡。
private void TabControl_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (e.Source == wizardTabs && e.RemovedItems.Count != 0 && e.AddedItems.Count != 0)
{
TabItem fromItem = e.RemovedItems[0] as TabItem;
TabItem toItem = e.AddedItems[0] as TabItem;
if (fromItem.Name == "lastTab" && toItem.Name == "firstTab")
{
e.Handled = true;
wizardTabs.SelectedItem = fromItem;
fromItem.Focus();
}
}
}
如果需要按特定順序完成這些步驟,請不要使用選項卡控件。
您應該在這種情況下使用嚮導界面。
另一方面,如果步驟不需要按照特定的順序完成,我不知道爲什麼要給用戶那種印象。
由於沒有官方的「嚮導控制」,大多數網站都建議用戶創建自己的嚮導,以他們想要的方式工作。這就是我想要做的,作爲其中的一部分,我想阻止從最後一個選項卡到第一個選項卡的循環。這就是爲什麼。另外,我的應用程序不是官方的嚮導 - 用戶可能希望在選項卡之間跳轉以輸入所需的信息。 – Jarvis 2012-01-18 19:58:22
您是否嘗試將附加屬性KeyboardNavigation.DirectionalNavigation
設置爲TabControl
至Once
?
感謝您的建議,但沒有沒有工作。 – Jarvis 2012-01-19 14:15:48
- 1. WPF TabControl - 防止卸載選項卡更改?
- 2. PHP我可以做這個循環嗎?
- 3. 我可以做這個JavaScript循環嗎?
- 4. jQuery UI選項卡返回第一個選項卡
- 5. 你可以防止一個PHP while循環從錯誤出?
- 6. wpf TabControl,可以組織不同類中的每個選項卡?
- 7. 防止DataGridView選擇第一項
- 8. 第n個孩子選擇以防止嵌套項目選擇
- 9. 循環卡在第一頁
- 10. MVVM Tabcontrol更改選項卡
- 11. 打開頁面預選選項卡,這不是第一個選項卡
- 12. 如何防止jquery選項卡在刷新時默認爲第一個選項卡?
- 13. 如何防止在TabActivity的第一個選項卡上啓動活動?
- 14. jQuery選項卡:禁用第一個選項卡,選擇第二個
- 15. 防止循環jQuery
- 16. 可以循環回特定行嗎?
- 17. WPF選項卡控件防止選項卡更改
- 18. JQuery:我可以在同一頁面有兩個選項卡嗎?
- 19. 防止在kubernetes崩潰循環回退
- 20. 如何設置第一個選項作爲選項從循環選擇框中的循環選項4
- 21. 防止使用ViewPager預加載下一個片段(選項卡)
- 22. WPF - TabControl - 防止選擇更改
- 23. 這個函數可以防止sql注入和xss嗎?
- 24. 防止將選項卡放入WPF DataGrid
- 25. 防止重複jquery選項卡
- 26. 防止TabHost選項卡更改?
- 27. MVVM從TabControl中選擇新選項卡
- 28. 無法爲第2個選項卡組件啓用第一個選項卡
- 29. 使用數據綁定時,TabControl無法創建第一個選項卡
- 30. 我可以讓R#intellisense選擇第一個列表項嗎?
您可能想編輯此答案並刪除問題部分以防止其被刪除。在該特定問題上創建一個新問題。 – Till 2012-01-19 14:45:16