我在三級深層TreeView中有一個非常奇怪的錯誤。這是間歇性的,我無法找到如何重複它一貫。以編程方式刪除後,添加然後刪除一些第三級項目,當我點擊根項目時,它沒有被選中。它仍然可以展開/摺疊,但不能通過單擊鼠標進行選擇,也不會觸發ItemSelectionChange事件。您可以單擊以選擇第二級或第三級項目,之後您最終能夠選擇根項目。我已經嘗試在刪除後爲所有項目設置IsSelected = false,並嘗試在刪除項目時進行了很好的清理,但沒有幫助。有人遇到過這個bug嗎?你有任何建議來消除這個錯誤?WPF,TreeView的bug,從樹狀視圖中刪除項目後無法選擇根項目
0
A
回答
0
以編程方式將IsSelected設置爲節點後發生。然後我不能單擊來選擇前一個節點。
[編輯]
終於搞清楚發生了什麼事。看起來僅僅設置IsSelected屬性是不夠的,因爲樹的內部邏輯焦點保留在舊的選定元素上。
事件被髮送到樹項目,但因爲它已經在內部具有邏輯焦點,它沒有激發焦點更改(從中我猜測樹會知道何時更改所選項目)。
如果我把焦點放在我設置IsSelected爲true的樹節點上,它可以正常工作。
====================
你對新增加的元素設置IsSelected上真的嗎?如果是的話,也可以這樣做:
DependencyObject nodeVisualContainer = mTreeControl.ItemContainerGenerator.ContainerFromItem(nodeToSelect);
if (nodeVisualContainer is UIElement)
((UIElement)nodeVisualContainer).Focus();
注意:這只是邏輯上關注元素。鍵盤焦點不會受到影響。
相關問題
- 1. 無法從Eclipse中的項目視圖中刪除項目
- 2. 在樹狀C#WPF刪除選中的項目
- 3. Java SWT:刪除樹項目的選擇
- 4. 更改樹視圖中選擇項目
- 5. 更改WPF中樹狀視圖的選定項目
- 6. Java FX刪除TreeView根項目
- 7. WPF樹視圖添加到樹時選擇項目
- 8. 在WPF TreeView中展開樹視圖項目
- 9. WPF TreeView項目不可選
- 10. 從項目中刪除標籤Ttk Treeview
- 11. 改善WPF樹視圖的默認選擇的項目風格
- 12. 選擇樹項目
- 13. 從列表視圖中刪除項目
- 14. 從列表視圖中刪除項目
- 15. 從WPF中的ListBox中刪除項目?
- 16. 我無法從列表視圖中刪除項目
- 17. 從列表視圖中選擇項目
- 18. 無法從ListBox中刪除項目
- 19. 無法從WinForms中刪除項目ListView
- 20. 無法從lsitviewbox中刪除項目
- 21. 無法從列表中刪除項目?
- 22. WPF與DataGrid中刪除所選項目
- 23. 刪除現有的項目後無法創建Firebase(Google)項目
- 24. WPF篩選ListView刪除所選項目
- 25. 結合WPF樹視圖模板項目
- 26. 我無法從JList中選擇項目
- 27. 在formview中選擇項目根據下拉選擇的項目
- 28. 無法刪除VBA項目
- 29. WPF從列表框中刪除項目
- 30. 刪除選擇時選擇的項目會從列表框中