Перетаскивание списка Silverlight
Я пытаюсь реализовать функцию перетаскивания между двумя списками Telerik. Я сделал это с помощью следующего кода
Список 1:
<telerik:RadListBox x:Name="name1" SelectionMode="Multiple" >
<telerik:RadListBox.DragVisualProvider>
<telerik:ScreenshotDragVisualProvider />
</telerik:RadListBox.DragVisualProvider>
<telerik:RadListBox.DragDropBehavior>
<telerik:ListBoxDragDropBehavior />
</telerik:RadListBox.DragDropBehavior>
</telerik:RadListBox>
Список 2:
<telerik:RadListBox x:Name="name2" AllowDrop="True">
<telerik:RadListBox.DragDropBehavior>
<telerik:ListBoxDragDropBehavior />
</telerik:RadListBox.DragDropBehavior>
</telerik:RadListBox>
Добавлен этот стиль:
<Style TargetType="telerik:RadListBoxItem" >
<Setter Property="telerik:DragDropManager.AllowCapturedDrag" Value="True" />
</Style>
Он работает отлично, но я не хочу, чтобы элемент удалялся из списка источников при перетаскивании в другой список
1 ответ
Из телерика помогите по поводу дерева (тоже самое для других):
Если вы хотите после завершения операции перетаскивания удалить элемент из древовидного представления, не обрабатывайте PreviewDragEnded для древовидного представления.
Итак, все что вам нужно это:
<telerik:RadTreeView x:Name="radTreeView" Margin="8,8,20,8"
PreviewDragEnded="radTreeView_PreviewDragEnded"
ItemsSource="{Binding Source={StaticResource DataSource}, Path=LeaguesDataSource}"
ItemTemplate="{StaticResource League}"
IsDragDropEnabled="True"
IsDragTooltipEnabled="False"/>
Код-за:
private void radTreeView_PreviewDragEnded( object sender, RadTreeViewDragEndedEventArgs e )
{
e.Handled = true;
}