簡體   English   中英

Silverlight ListBox拖放

[英]Silverlight ListBox Drag and Drop

我正在嘗試在兩個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>

它工作完美,但我不希望將元素拖到其他列表框中時從源列表框中刪除該元素

從telerik幫助中獲取關於樹視圖的信息(與其他視圖相同):

如果要在完成拖放操作后從樹視圖中刪除該項目,請不要處理樹視圖的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;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM