Перетаскивание списка 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;
}
Другие вопросы по тегам