Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Silverlight 5 Treeview拖放_C#_Silverlight_Entity Framework - Fatal编程技术网

C# Silverlight 5 Treeview拖放

C# Silverlight 5 Treeview拖放,c#,silverlight,entity-framework,C#,Silverlight,Entity Framework,我在SilverLight中使用TreeView进行拖放时遇到问题。我希望能够在树视图中重新排序项目。例如,重新租赁一个项目。我正在使用具有层次关系(ID、ParentID)的EntityFramework。这是我的xaml <toolkit:TreeViewDragDropTarget AllowDrop="True" HorizontalAlignment="Left"> <sdk:TreeView Name="treeView1" Height="176"

我在SilverLight中使用TreeView进行拖放时遇到问题。我希望能够在树视图中重新排序项目。例如,重新租赁一个项目。我正在使用具有层次关系(ID、ParentID)的EntityFramework。这是我的xaml

<toolkit:TreeViewDragDropTarget AllowDrop="True" HorizontalAlignment="Left">
   <sdk:TreeView Name="treeView1" Height="176" 
        HorizontalAlignment="Left" Width="Auto">
      <sdk:TreeView.ItemTemplate>
         <sdk:HierarchicalDataTemplate 
              ItemsSource="{Binding Path=Children}">
            <TextBlock Text="{Binding Path=LocationName}"/>
         </sdk:HierarchicalDataTemplate>
      </sdk:TreeView.ItemTemplate>
   </sdk:TreeView>
</toolkit:TreeViewDragDropTarget>

我创建了一些事件处理程序,以查看拖放事件是否正常工作。Silverlight还提供了发生拖动的视觉反馈

我想知道的一件事是,绑定到TreeView的集合不是一个可观察的集合。实体的子属性是EntityCollection。我不确定我能在EntityObject中处理什么

有人有什么想法吗

更新:如果我将子节点拖动到其上树或下树中的任何节点,则不会发生任何事情。如果在根节点上方或下方拖动子节点,则树状视图中将显示一条线。如果我把它放在那里,我会得到一个空引用异常。我说不清楚。我知道在这个问题上有很多问题,但我认为我们正在接近。任何帮助或见解都将不胜感激

更新2:我将添加一些屏幕截图来显示正在发生的事情

样本树视图

这是我拖动项目时的外观。我试图把银河系拖成一个没有父节点的根节点。请注意顶部的线条。我想这就是投递地点。如果我把它放在那里,我会得到一个例外。比方说,我把太阳系拖成宇宙的直接产物。什么也没发生。也没有行出现