Désactiver WPF TreeView (ou TreeViewItem) sélection?
Est là une belle façon (sauf retemplating l'ensemble de la TreeViewItem.Template
) pour désactiver la sélection dans TreeView
?
Je suis fondamentalement à la recherche pour le ItemsControl
style de la TreeView
(Un ItemsControl
est la meilleure utilisation possible de "désactiver" la sélection sur ListBox
, lire cette post)
Voici une autre approche: stackoverflow.com/questions/1398559/...
OriginalL'auteur Shimmy | 2010-12-29
Vous devez vous connecter pour publier un commentaire.
Chaque fois qu'un élément est sélectionné, vous pouvez "désélectionner". Ex. modifier le code de http://www.codeproject.com/KB/WPF/TreeView_SelectionWPF.aspx ou utiliser un MVVM (voir http://www.codeproject.com/KB/WPF/TreeViewWithViewModel.aspx) et toujours ensemble IsSelected dos à faux.
OriginalL'auteur Daniel Rose
Essayez ceci:
Il a également empêcher les nœuds sans enfants d'être sélectionné, considère que.
OriginalL'auteur Morten Strand
Basé sur les liens de la accepté de répondre, je l'ai fait dans mon projet:
Fonctionne pour TreeViewItem. Et dans le modèle de vue:
Maintenant, vous n'avez pas à aller à la chasse!
OriginalL'auteur Balki
Cela a fonctionné pour moi (basé sur cette réponse, mais pas lié à l'élément de sélection est désactivée que ce soit):
OriginalL'auteur Shimmy
J'ai décidé d'écrire une réutilisables comportement, HTH:
Utilisation:
OriginalL'auteur Shimmy
Je viens de non sélectionnés le TreeViewItems comme ils se sont choisis.
J'utilise le TreeView qu'une seule fois. Cependant, si j'ai ajouté plusieurs placé je considère la recherche en ajoutant ceci à un Attaqués Comportement.
Xaml:
Code derrière:
OriginalL'auteur Henrik Bøgelund Lavstsen
Je l'ai fait d'une manière différente que les acceptée réponse:
Permet de dire que vous avez une propriété dans votre ViewModel (dire "ShouldPreventSelection')
Maintenant, quand ShouldPreventSelection est vrai que vous voulez de sélection pour être désactivés:
Dans votre Arborescence de feu le PreviewSelected événement de la sorte:
Puis dans le codebehind vous pouvez les suivantes:
PreviewSelected
événement sur le WPFTreeView
.hmm j'ai été en utilisant Telerik est RadTreeView, et je crois que j'ai supposé que le PreviewSelected événement a été disponible dans un TreeView.
OriginalL'auteur Danield