1

好吧,这有点尴尬,但我对 wpf 很陌生。我想在父窗口内实现一个子窗口,它可以在整个窗口内移动和拖动。到目前为止,我已经看过很多博客,但它们都非常复杂和复杂,在其中部署我的代码并不容易。在这里,我尝试以简单的方式实现,

xml:

<Window x:Class="Project_Explorer.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:wpfx="http://schemas.microsoft.com/winfx/2006/xaml/presentation/toolkit/extended"
        Title="Project Explorer">
 <Grid>
    <wpfx:ChildWindow Name="PopupChildWindow" Caption="Child Window" Height="200" IsModal="True" Margin="105,0,0,47" Width="306" HorizontalAlignment="Left" VerticalAlignment="Bottom" / >           
 </Grid>
</window>

请不要向我推荐任何帖子或网站。只需给出一个实现子窗口的小演示 ​​xaml 和 xaml.cs 文件。

4

1 回答 1

1

试试 FloatingWindow/FloatingWindowHost - 你可以在 CodeProject.com 上找到原始版本,或者你可以获取我的更新版本,它还添加了 FloatingWindowHostZUI(带有缩放和其他额外的东西),并且我主要合并了 WPF 和 Silverlight 版本的代码(原始版本有单独的实现)。

在http://ClipFlair.codeplex.com上查看我的那个库版本(获取源代码并签出源代码中的 Client/ZUI 文件夹,在 FloatingWindow 和 FloatingWindowZUI 文件夹中有单独的解决方案可用 [第二个使用第一个项目一])

请注意,这些不是扩展 Window 类,但您可以将代码设置为 UserControl 并将其托管在 FloatingWindow 中,或者创建 FloatingWindow 子类并直接将代码放在其中。

您可以在http://ClipFlair.net尝试 FloatingWindow ,点击那里的 Studio 链接,然后打开教程活动。使用 FloatingWindowHost 工具栏中的缩放滑块。也可以使用标题栏上的扳手按钮翻转 Windows,并在后面设置它们的属性,如它们各自的缩放(比例)。

于 2014-01-15T08:49:54.743 回答