下面是可以在不同GridView之間拖放GridView元素的XAML代碼,但是,此方法僅適用於鼠標輸入,僅適用於部分觸摸輸入。XAML GridView到GridView拖放鼠標和觸摸
只有在垂直拖動時,觸摸輸入元素才能從GridView中「解鎖」。在水平拖動時,UI將嘗試滾動屏幕,而不是僅移動GridView元素。
因此,鼠標完美工作,觸摸僅適用於初始垂直拖動,在初始垂直拖動之後,您可以像使用鼠標一樣移動元素。這是一個Windows 8應用程序。
<Page.Resources>
<DataTemplate x:Key="ItemTemplate1">
<Border Background="#25BDC0">
<Grid Width="230" Height="230" Margin="10">
<TextBlock Text="{Binding Title}" Style="{StaticResource HeaderTextStyle}"
HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</Border>
</DataTemplate>
</Page.Resources>
<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}" Width="Auto" Height="Auto">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<GridView Grid.Column="0" ItemTemplate="{StaticResource ItemTemplate1}"
ItemsSource="{Binding FirstCollection}"
AllowDrop="True" CanDragItems="True"
DragItemsStarting="GridViewDragItemsStarting"
Drop="GridViewDrop" Margin="10">
</GridView>
<GridView Grid.Column="1" ItemTemplate="{StaticResource ItemTemplate1}"
ItemsSource="{Binding SecondCollection}"
AllowDrop="True" CanDragItems="True"
DragItemsStarting="GridViewDragItemsStarting"
Drop="GridViewDrop" Margin="10">
</GridView>
</Grid>