在WPF中制作“帮助”窗口

时间:2010-03-20 04:04:47

标签: c# wpf window-management

我正在WPF中编写一个应用程序并希望创建一个“帮助程序”窗口。窗口需要可调整大小,没有最小化选项,也不会显示在任务栏中。如果应用程序获得焦点,它也应该出现,但是应该保留它在主窗口的前面还是后面。当主窗口关闭时,它应该与应用程序一起关闭。

示例是Visual Studio中的分离窗格。

我让辅助窗口没有出现在任务栏中,但无法获得我想要的其他行为。如果他们是他们自己的窗户,他们就不会与应用程序的其余部分一起关注。如果我将主窗口指定为其所有者,则主窗口不能位于辅助窗口的顶部。

任何人都知道一个很好的方法来解决这个问题吗?

2 个答案:

答案 0 :(得分:1)

我认为你所寻找的东西就像一个“无模式”对话框。我不做WPF,但这里的描述看起来非常简单。

http://msdn.microsoft.com/en-us/library/aa969773.aspx

答案 1 :(得分:1)

您可以尝试这样的事情:

<Window x:Class="HelperWindowDemo.HelperWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="HelperWindow" Height="300" Width="300"
    WindowStyle="ToolWindow"
    ShowInTaskbar="False">
<Grid>
    <TextBlock>Helper window..</TextBlock>
</Grid>

然而你想表现出来,就是这样:

private void AddHelperWindow_Click(object sender, RoutedEventArgs e)
    {
        var window = new HelperWindow { Owner = this };
        window.Show();
    }

它可调整大小,没有最小化选项,没有显示在任务栏中,当应用程序获得焦点时出现,关闭主窗口......它唯一没有涉及的是允许这些工具窗口落后主窗口。