0

私は WPF でアプリを作成しており、「ヘルパー」ウィンドウを作成したいと考えています。ウィンドウはサイズ変更可能である必要があり、最小化オプションはなく、タスク バーには表示されません。アプリがフォーカスを受け取ると、それも表示されますが、メイン ウィンドウの前面または背面にあるかどうかは保持する必要があります。メイン ウィンドウを閉じると、アプリと一緒に閉じます。

例として、Visual Studio の切り離されたペインがあります。

ヘルパー ウィンドウがタスク バーに表示されないようにしましたが、必要な動作が残りません。それらが独自のウィンドウである場合、アプリの残りの部分と一緒にフォーカスを取得しません。メイン ウィンドウを所有者として指定すると、メイン ウィンドウをヘルパー ウィンドウの上に置くことはできません。

これにアプローチする良い方法を知っている人はいますか?

4

2 に答える 2

1

あなたが探しているのは、「モードレス」ダイアログ ボックスのようなものだと思います。私は WPF を使用していませんが、ここでの説明は非常に簡単に思えます。

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

于 2010-03-20T04:09:38.433 に答える
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();
    }

サイズ変更可能、最小化オプションなし、タスクバーに表示されない、アプリがフォーカスされると表示される、メインウィンドウで閉じる...唯一カバーしていないのは、これらのツールウィンドウがメインウィンドウの後ろにあることを許可することです.

于 2010-04-09T15:59:08.173 に答える