使控件在拖放过程中对拖动事件透明

本文关键字:拖动 事件 透明 过程中 控件 拖放 | 更新日期: 2023-09-27 18:04:35

我有一个ListView,它充当拖放操作的拖放目标。当列表为空时,我会在其顶部放置一个TextBlock,并显示一条消息,通知用户可以将东西拖到那里(两个控件都包含在一个Grid单元格中,以实现重叠(。但是由于TextBlock位于ListView之上,因此它会截获与拖放相关的各种事件,并防止将内容拖放到消息文本本身。

我真的不想在TextBlock中添加拖放处理程序——有什么方法可以简单地使其对拖放操作"透明"吗?

在写这篇文章的时候,我突然想到了一件事,那就是把文本按Z顺序放在列表下面,然后给列表一个透明的背景。但这真的是实现这一目标的正确方式吗?理想情况下,有一种方法可以为文本提供一个ZIndex用于渲染,另一个用于命中测试。

使控件在拖放过程中对拖动事件透明

TextBlock设置IsHitTestVisibleFalse