0

我正在创建一个 WPF/xaml 应用程序

窗口样式=“无”

所以正因为如此,我不得不使用

    protected override void OnMouseLeftButtonDown(MouseButtonEventArgs e)
    {
        base.OnMouseLeftButtonDown(e);

        // Begin dragging the window
        this.DragMove();

使其可以在屏幕上拖动窗口。但是,我也想在我计划使用的窗口中制作可拖动的图像

    <Image HorizontalAlignment="Right" Height="65" Width="203" Margin="0,278.271,14.434,82.5" Source="Images/Implementation1.png" Stretch="Fill">
        <i:Interaction.Behaviors>
            <ei:MouseDragElementBehavior ConstrainToParentBounds="True"/>
        </i:Interaction.Behaviors>
    </Image>

问题是我不能让它们都在同一个窗口上工作,因为它们只有在另一个被关闭时才会起作用。任何帮助将不胜感激。

4

1 回答 1

1

OnMouseLeftButtonDown是在整个窗口上定义的,因此会干扰MouseDragElementBehavior.

添加一个Border到你的窗口,给它一个BackgroundTransparent没关系,只是不要让它没有背景)并MouseLeftButtonDown在边框上收听事件。在DragMove()事件的处理程序中执行。

你可以把边框作为窗口的标题,也可以把它放在内容的后面。

于 2012-04-30T16:11:20.510 回答