ListView-奇怪的问题,因为它已被某些东西部分覆盖

时间:2019-05-17 20:38:49

标签: c# wpf listview

我有一个非常奇怪的问题。 我有一个带有listview的用户控件。我的用户控件位于ItemsControl内:

<ItemsControl ItemsSource="{Binding Groups}" Grid.Row="2">
        <ItemsControl.ItemsPanel>
            <ItemsPanelTemplate>
                <WrapPanel />
            </ItemsPanelTemplate>
        </ItemsControl.ItemsPanel>
        <ItemsControl.ItemTemplate>
            <ItemContainerTemplate>
                <app:MySuperUserControl Margin="5" />
            </ItemContainerTemplate>
        </ItemsControl.ItemTemplate>
    </ItemsControl>

现在我有3个用户控件彼此相邻放置。前两个工作正常,但第三个问题很奇怪。看看这个gif:

enter image description here

这个简单的例子说明了这种奇怪的行为。 ListView在MouseEnter中应将颜色更改为红色,而在MouseLeave中应丢失该颜色。

如您所见,该行为不完全符合预期。进入鼠标后,ListView不会立即更改其颜色,而是会保持一定距离。列标题也是如此,在此示例中也可以看到。

最大的问题是MouseDoubleClick。它也可以在一定距离下工作,而不是在所有listView中工作。好像有些东西覆盖了此ListView,但我不知道它可能是什么以及如何检查它。

有什么想法吗?有人有类似的问题吗?

1 个答案:

答案 0 :(得分:0)

好的,所以我得到了答案。 在靠近控件的主窗口中,是另一个导致问题的不可见控件。该控件已直接从上到下放置在屏幕中央。