Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 为什么ContentControl中的ListViewItems只能在前几个像素上选择?_Wpf_Listview_Datatemplate_Listviewitem - Fatal编程技术网

Wpf 为什么ContentControl中的ListViewItems只能在前几个像素上选择?

Wpf 为什么ContentControl中的ListViewItems只能在前几个像素上选择?,wpf,listview,datatemplate,listviewitem,Wpf,Listview,Datatemplate,Listviewitem,我想向WPF应用程序的用户请求不同类型的属性。因此,我有一个列表视图,它绑定到一个可观察集合。每个属性都源自PropertiesBase。由于专家用户应该能够编辑这些属性,因此根据EditMode属性和属性类型选择DataTemplate 数据显示和其他一切正常,除了我无法选择ListViewItem。仅当我单击ListViewItem内的文本框或项目的前几个像素时,我才能选择项目 我曾经尝试过专注,但这并没有让我成功。我还将ListViewItem的xaml直接复制到Listview中(不带

我想向WPF应用程序的用户请求不同类型的属性。因此,我有一个
列表视图
,它绑定到一个
可观察集合
。每个属性都源自
PropertiesBase
。由于专家用户应该能够编辑这些属性,因此根据
EditMode
属性和属性类型选择
DataTemplate

数据显示和其他一切正常,除了我无法选择ListViewItem。仅当我单击
ListViewItem
内的文本框或项目的前几个像素时,我才能选择项目

我曾经尝试过专注,但这并没有让我成功。我还将ListViewItem的xaml直接复制到Listview中(不带datatemplate)。这是意料之中的事

ListView XAML:


DataTemplate引用的ListViewItem XAML示例:


我希望我在哪里单击ListViewItem并不重要,但在任何情况下都会选择该项目(尤其是上面图像的红色部分)。

在his中提供了一个解决方案 我确实嵌套了两个
ListViewItems

解决方案是将模板控件的类型更改为
ContentControl



谢谢克莱门斯

您的组件结构不清楚。对于ListView中的项,DataTemplate中的ContentControl是否确实有一个带有派生ListViewItem的ContentTemplate?此DataTemplate将用作ListView自动生成的ListViewItems的ContentTemplate。结果将是每个项有两个嵌套的ListViewItems。请尝试将模板内ContentControl的IshittesVisible属性设置为false,并查看它是否改善了情况。。。