如何防止意外的xaml控制“选择”

时间:2012-04-20 14:18:07

标签: c# wpf xaml selection

我在使用xaml创建设计时发现了一个奇怪的错误:

有时候我可以“选择”控制我选择文字的方式。

通常控件看起来像这样:

enter image description here

如果意外选择发生,它看起来像这样:

enter image description here

为什么会发生这种情况,我该如何预防呢?

更新

这是我正在使用的控件: TreeView-> Expander-> StackPanel->数据网格

根据答案,问题可能源自TreeView。

如何阻止选择TreeView项目?

2 个答案:

答案 0 :(得分:2)

如果控件位于ListBoxItem之类的可选内容中,则应该是这种情况,以防止使用ItemsControls而不是Selector的子类(例如ListBox) 。如果那不是它我不知道发生了什么,因为我从未见过这样的事情。


根据您的修改判断,您似乎有TreeViewItems,您可以either override the respective brush-keys隐藏选择内容或添加TreeView.ItemContainerStyle,将Template更改为不会显示的内容选择首先。

答案 1 :(得分:2)

您的控件似乎基于列表框,该列表框支持以这种方式选择项目。或许可以将基础控制改为基于“项目控制”。

编辑:

树视图具有允许选择项目的相同行为。看到这个问题......

Disable WPF TreeView (or TreeViewItem) selection?