在我的UWP应用中,我将一个列表项从一个列表中拖放到另一个列表中。拖动时,我看到一个红色圆圈的字形和/或“移动”或“复制”文本。我不希望这样做,因为我没有移动或复制任何东西,也不想显示红色圆圈字形,因为它表示您不能拖动该项目但可以。我可以使用以下代码来摆脱字形和标题:
private void ListView_DragOver(object sender, DragEventArgs e)
{
e.DragUIOverride.IsCaptionVisible = false;
e.DragUIOverride.IsGlyphVisible = false;
}
但是我必须为拖动列表项的每个控件实现此代码。
有什么方法可以在拖动项目时从不显示字形和标题吗?
答案 0 :(得分:1)
似乎无法在dragitem本身上禁用此行为,但是可以通过将包含元素(网格或包含视图中控件的任何元素)设置为放置目标并实现DragOver事件来禁用此行为像这样:
<Grid Name="MainGrid" DragOver="HideDragInfo" AllowDrop="True">
然后像这样实现HideDragInfo:
private void HideDragInfo(object sender, DragEventArgs e)
{
e.DragUIOverride.IsCaptionVisible = false;
e.DragUIOverride.IsGlyphVisible = false;
}