将资源管理器拖放到Telerik WPF树视图中 [英] Drag drop files from explorer onto Telerik WPF treeview
本文介绍了将资源管理器拖放到Telerik WPF树视图中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何设置telerik WPF RadTreeView以允许将资源从资源管理器中删除到树节点上?
How do I set up a telerik WPF RadTreeView to allow dropping files from explorer onto the tree nodes?
我们正常拖动n drop事件,但是不要让我们知道我们放弃了什么节点。
我们正在尝试使用Telerik自定义拖放支持,但没有运气。
We go the normal drag n drop events working, but they don't let us know what node we dropped on. We are currently trying to use the Telerik custom drag n drop support but with no luck.
想法?
推荐答案
很简单,你只需要把它连接起来。这是一个简单的例子。
It is pretty simple, you just have to wire it up your self. Here is a simple example.
然后这个XAML:
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525"
xmlns:core="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls"
xmlns:telerik="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls.Navigation">
<Grid>
<telerik:RadTreeView x:Name="rtvMain" AllowDrop="True" IsDragDropEnabled="True" ItemPrepared="rtvMain_ItemPrepared">
<telerik:RadTreeViewItem Header="Sport Categories">
<telerik:RadTreeViewItem Header="Football">
<telerik:RadTreeViewItem Header="Futsal" />
<telerik:RadTreeViewItem Header="Soccer"/>
</telerik:RadTreeViewItem>
<telerik:RadTreeViewItem Header="Tennis"/>
<telerik:RadTreeViewItem Header="Cycling"/>
</telerik:RadTreeViewItem>
</telerik:RadTreeView>
</Grid>
代码:
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void rtvMain_ItemPrepared(object sender, RadTreeViewItemPreparedEventArgs e)
{
e.PreparedItem.Drop += new DragEventHandler(PreparedItem_Drop);
}
private void PreparedItem_Drop(object sender, DragEventArgs e)
{
var destinationItem = sender as RadTreeViewItem;
if (destinationItem != null)
{
string[] files = (string[])e.Data.GetData(DataFormats.FileDrop);
foreach (string file in files)
{
Console.WriteLine(String.Format("Trying to put {0} into the folder {1}...", file, destinationItem));
}
}
e.Handled = true;
}
}
这篇关于将资源管理器拖放到Telerik WPF树视图中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文