Ich habe eine ListBox (mit ItemTemplate im XAML definiert) und ein DataGrid. Ich möchte Drag & Drop-Operationen vom DataGrid auf die ListBox durchführen. Mein Problem ist, ich verstehe nicht, wie zu wissen, auf welchem ListBoxItem die gezogene Zeile gelöscht wurde.Drag & Drop von einem DataGrid zu einem ListBoxItem
Hat jemand eine Idee?
Vielen Dank im Voraus.
bearbeiten: Hier ist die XAML des ListBox:
<toolkit:DockPanel Grid.Column="0" Grid.Row="0" Grid.RowSpan="3" Width="200">
<toolkit:ListBoxDragDropTarget Name="dropTarget1" AllowDrop="True" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch" AllowedSourceEffects="Move">
<ListBox Name="lbClusters">
<!-- Override default HorizontalContentAlignment -->
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch"></Setter>
</Style>
</ListBox.ItemContainerStyle>
<!-- Override default presentation panel (to be able to organize) -->
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel />
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<!-- Items presentation -->
<ListBox.ItemTemplate>
<DataTemplate>
<Border BorderBrush="Black" BorderThickness="1" Margin="5">
<Grid>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Border Background="Gray" Padding="10,5,0,5" Grid.Row="0" >
<TextBlock Text="{Binding Name}" HorizontalAlignment="Stretch" />
</Border>
<ListBox ItemsSource="{Binding MatchingProcessors}" DisplayMemberPath="Name" Grid.Row="1" MinHeight="100" />
</Grid>
</Border>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</toolkit:ListBoxDragDropTarget>
</toolkit:DockPanel>
Und hier ist das Datagrid:
<toolkit:DataGridDragDropTarget VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch" VerticalAlignment="Stretch">
<sdk:DataGrid Name="Grid1" SelectionChanged="Grid_SelectionChanged" AutoGenerateColumns="False">
<sdk:DataGrid.Columns>
<sdk:DataGridTextColumn Binding="{Binding Configuration.Nickname}" Header="NickName" />
<sdk:DataGridTextColumn Binding="{Binding SerialNumber}" Header="SN" />
<sdk:DataGridTextColumn Binding="{Binding ComputerName}" Header="IPHostname"/>
<sdk:DataGridTextColumn Binding="{Binding Configuration.GroupName}" Header="Group" />
</sdk:DataGrid.Columns>
</sdk:DataGrid>
</toolkit:DataGridDragDropTarget>