C# 在主窗口边界上/外部显示wpf内容

C# 在主窗口边界上/外部显示wpf内容,c#,wpf,xaml,clipping,mainwindow,C#,Wpf,Xaml,Clipping,Mainwindow,我试图实现一种效果,即用控件重叠主窗口边界。很难用语言来解释这一点,这也可能是为什么我很难找到关于如何做到这一点的信息,或者这是否可能的原因 下面是一个我试图(从设计器)获得的效果示例,“note”对象浮动在主窗口的边界之外 然而,我在运行时得到的效果是(如下),内部控件被主窗口的边界剪裁 有人能告诉我这是否可能(或不可能),以及这是否是关于我如何获得这种效果的一些建议。你尝试过这个属性吗?我认为没有一种方法可以在窗口边界之外画画。但是,您可以简单地为note控件创建一个新窗口,并将其与主窗

我试图实现一种效果,即用控件重叠主窗口边界。很难用语言来解释这一点,这也可能是为什么我很难找到关于如何做到这一点的信息,或者这是否可能的原因

下面是一个我试图(从设计器)获得的效果示例,“note”对象浮动在主窗口的边界之外

然而,我在运行时得到的效果是(如下),内部控件被主窗口的边界剪裁


有人能告诉我这是否可能(或不可能),以及这是否是关于我如何获得这种效果的一些建议。

你尝试过这个属性吗?

我认为没有一种方法可以在窗口边界之外画画。但是,您可以简单地为note控件创建一个新窗口,并将其与主窗口对齐。

窗口的内容将始终被剪裁。所以基本上只有一条路可以走。通过为浮动内容创建一个新的透明窗口,然后根据主窗口的位置手动设置和更新浮动内容窗口的位置,可以获得所需的效果


到目前为止,我一直在使用类似的功能。您可以尝试一下…

有一个控件可以实现这种行为您尝试过弹出控件吗? 检查

这是一个例子;e“



您是否考虑过使用
弹出窗口
?谢谢,我认为弹出控件是获取其他答案的方法。弹出控件实际上会在内部创建一个新窗口,正如我在回答中所建议的。这是真的。也许您可以扩展您的答案,并简要说明如何使用弹出窗口同时创建一个新窗口。
<Window x:Class="MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="350" Width="525">
<Grid>
    <ToggleButton x:Name="MainButton" Content="Show popup" VerticalAlignment="Top" HorizontalAlignment="Right"/>
    <Popup PlacementTarget="{Binding ElementName=MainButton}" Placement="Bottom" AllowsTransparency="True" IsOpen="{Binding ElementName=MainButton, Path=IsChecked}">
        <Grid>
            <Border BorderBrush="Orange" BorderThickness="1" Background="Yellow"/>
            <TextBlock Text="Lorem Ipsum is simply dummy text of the printing and typesetting industry"/>
        </Grid>            
    </Popup>
</Grid>