如何使用HierarchicalDataTemplate和使用MVVM托管TextBlocks的TreeView项目进行拖放?

时间:2018-04-16 15:58:18

标签: wpf drag-and-drop treeview hierarchicaldatatemplate

我有一个分层数据模板,我想允许拖放功能。我正在使用TextBlocks来显示TreeView项目数据。但是,拖放功能现在无法正常工作。

我尝试使用拖放事件修改TreeView样式模板但没有任何东西被触发。我怀疑是因为我需要使用TextBlock?

 <Style x:Key="{x:Type TreeViewItem}" TargetType="{x:Type TreeViewItem}">
 <EventSetter Event="Drag_Over" Handler="Drag_Over_Event"/>
 <EventSetter Event="Drop" Handler="Drop_Event"/>
 <EventSetter Event="MouseMove" Handler="Mouse_Move_Event"/>
 </Style>

这是我的HierarchicalDataTemplate:

 <TreeView ItemsSource="{Binding Situation.TopLevelSituationList}" AllowDrop="True">
        <TreeView.Resources>
            <HierarchicalDataTemplate DataType="{x:Type local:GroupSubGroup}" ItemsSource="{Binding SubGroups}"/>
            <HierarchicalDataTemplate DataType="{x:Type local:GroupDecision}" ItemsSource="{Binding Decisions}">
                <HierarchicalDataTemplate.ItemTemplate>
                    <DataTemplate>
                        <TextBlock Style="{StaticResource TextBlockBaseStyling}" Text="{Binding}"/>
                    </DataTemplate>
                </HierarchicalDataTemplate.ItemTemplate>
            </HierarchicalDataTemplate>
        </TreeView.Resources>

我咨询了一些资源,但无论如何都无法实现拖放工作。

有没有人有任何提示?

0 个答案:

没有答案