1

2つの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>

完全に機能しますが、他のリストボックスにドラッグしているときに、ソースリストボックスから要素を削除したくありません。

4

1 に答える 1

0

ツリービューに関するテレリックのヘルプから(他の人も同じ):

ドラッグ アンド ドロップ操作の完了後にツリー ビューからアイテムを削除する場合は、ツリー ビューの 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;
}
于 2013-08-21T16:26:06.263 に答える