gpt4 book ai didi

c# - 如何在 Windows 10 Phone 的 Windows 通用应用程序中设置触摸拖动?

转载 作者:太空狗 更新时间:2023-10-29 21:27:00 26 4
gpt4 key购买 nike

我已经成功地设置了我的网格,可以用鼠标拖动

<Grid x:Name="SourceGrid13"
CanDrag="True"
DragStarting="SourceGrid_DragStarting"
Margin="0,20,0,0">

但是,这在 Windows Phone (Windows 10) 上无法通过触摸拖动。我该如何设置?

我还假设一旦我拖动了 Grid,放置顺序将与鼠标相同?这是我的放置代码:

 <ListView HorizontalAlignment="Center" AllowDrop="True"
Drop="Image_Drop"
DragEnter="TargetImage_DragEnter"
DragLeave="TargetImage_DragLeave"
CanDragItems="True"
IsSwipeEnabled="True"
MinHeight="124"
Grid.Row="4"
Grid.Column="1">
<Image Height="224"/>
</ListView>

同样在平板电脑上,很难,但它会通过触摸拖动。我需要在手机上的某个地方启用它吗?

我现在认为,在未来的更新或 Windows Phone 上的 Windows 10 实际发布之前,触摸拖动可能会被禁用。

根据答案更新:

我将 listView 的 CanDragItems 和 IsSwipeEnabled 设置为 True,但这并没有改变任何东西。我应用了一些奇怪的结果的操作矩形。在 Phone 上,我可以拖动矩形,但是当我将它放入我的 ListViews 时,它就消失了。这些图片显示:

完整矩形:

enter image description here

将其拖出 Framework 元素 - 它被拖到 listView 后面。

enter image description here

在Desktop上,矩形被拖到listView前面,但拖出原来的Framework Element后,就不可拖了。

enter image description here

最佳答案

所有触摸屏操作所需的东西都在盒子里。有一个简单的例子 - Canvas 上的 Rectangle:

<Canvas Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Rectangle Width="50" Height="50" Fill="Blue" RenderTransformOrigin="0.5,0.5"
ManipulationDelta="Rectangle_ManipulationDelta" ManipulationMode="All">
<Rectangle.RenderTransform>
<TranslateTransform x:Name="dragTranslation" />
</Rectangle.RenderTransform>
</Rectangle>
</Canvas>

一个最小的处理代码是:

private void Rectangle_ManipulationDelta(object sender, ManipulationDeltaRoutedEventArgs e) {
dragTranslation.X += e.Delta.Translation.X;
dragTranslation.Y += e.Delta.Translation.Y;
}

它足以在触摸屏和桌面上使用鼠标将任何 UIElement 拖动到 Canvas 上。拖动 Grid 也有效。

关于c# - 如何在 Windows 10 Phone 的 Windows 通用应用程序中设置触摸拖动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33658737/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com