AvalonDock:在标题的DragOver事件中将内容放在最前面

时间:2018-09-13 13:38:34

标签: avalondock

我有一个带有AvalonDock DockingManager的窗口。我在程序执行期间动态创建了一些LayoutAnchorable,并将它们添加到DockingManager中。

对于LayoutAnchorables的标题,我定义了以下模板:

    <Window.Resources>
        <DataTemplate x:Key="TitleTemplate">
            <StackPanel Name="SpTitle" Orientation="Horizontal" >
                <Image Source="{Binding IconSource}" MaxHeight="20" MaxWidth="20" />
                <TextBlock Text="{Binding Title}" VerticalAlignment="Center" Margin="4,0,4,0" />
            </StackPanel>
        </DataTemplate>
    </Window.Resources>
我在DockingManager中引用的

        <ad:DockingManager Name="DmMain" Grid.Row="1" 
                       DocumentHeaderTemplate="{StaticResource TitleTemplate}"
                       AnchorableHeaderTemplate="{StaticResource TitleTemplate}"
                       AnchorableTitleTemplate="{StaticResource TitleTemplate}"
                       ActiveContentChanged="DmMain_ActiveContentChanged"
                       >

我想将控件从前面的一个LayoutAnchorable拖到后台的另一个。将控件拖到标题上方时,如何将背景内容置于最前面?

我试图在DragOver上为标题的StackPanel添加一个EventHandler,事件args为我提供了StackPanel,但我不知道如何找到StackPanel的正确LayoutAnchorable。

我花了几个小时来找到解决方案...

谢谢!

0 个答案:

没有答案