在我的silverlight应用程序应用程序中,我使用的是由信息区域组成的用户控件,以及下面的箭头图像(如图表元素)。这是XAML:
<UserControl xmlns:toolkit="http://schemas.microsoft.com/winfx/2006/xaml/presentation/toolkit"
x:Class="ClientGUI.Components.Clusters.ClusterLeftMenuUC"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">
<toolkit:PanelDragDropTarget AllowDrop="True">
<StackPanel Orientation="Vertical" Background="Transparent">
<Border CornerRadius="10" BorderBrush="Black" BorderThickness="2" Padding="0">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="ClusterName" Grid.Row="1" Grid.Column="1"/>
<TextBlock Text="{Binding Type}" Grid.Row="2" Grid.Column="1" />
<TextBlock Text="#Dest" Grid.Row="3" Grid.Column="2" />
</Grid>
</Border>
<Image Source="/ClientGUI;component/Images/arrow.png" Height="40" Margin="0,-2,0,0" Canvas.ZIndex="-1" />
</StackPanel>
</toolkit:PanelDragDropTarget>
usercontrol包含一个dropTarget,因为我必须能够从另一个源中删除项目(这不是我的问题)。
此usercontrol用于页面中的ListBox。我希望能够使用drag&amp; amp;掉落机制。
我的ListBox
也包含在ListBoxDragDropTarget
内。
问题在于,当我开始拖动我的usercontrol时,Image和边框内的数据充当单独的控件,因此只拖动其中一个。 我希望能够同时移动两个。 我做错了什么?
提前致谢!
答案 0 :(得分:1)
我有一个带有DataGrid的DataGridDragDropTarget,其中我有一个文本列和一个带有复选框的templatecolumn,我可以将一行拖放到列表框中。
也许你可以尝试使用带有templatecolumns的DataGridDragDropTarget而不是listbox。我不知道它是否会奏效。