拖放radTreeListView

时间:2012-02-11 11:30:30

标签: c# silverlight mvvm telerik mvvm-light

我使用Drag and Drop使用两个RadTreeListView控件。现在我的问题是我无法拖动SubTreeList项。我只能拖动根项目。我需要拖动子项而不是TreeListView的根项。

1 个答案:

答案 0 :(得分:2)

如果Telerik树视图的IsDragDropEnabled =“True”。那么默认情况下它的所有元素都可以被大胆。为了实现自定义行为,您希望某些元素可以拖动,而其他元素不应该被拖拽。你可以在后面的代码中处理RadTreeview的PreviewDragStarted事件。如果这个事件处理程序如果你设置e.handled = true那么它将取消拖动,反之亦然。

 private void treeListView_PreviewDragStarted(object sender, Telerik.Windows.Controls.RadTreeViewDragEventArgs e)   
       {
        //do not allow portfolio group or product to be dragged
        if (e.DraggedItems.Count > 0)
        {
            object source = e.DraggedItems[0];
            if (source is parent)
            {
                e.Handled = true;
            }
            else
            {
                e.Handled = false;
            }
        }
    }