数時間のグーグルの後、この問題に関するコメントを見つけることができませんでした。背景が透明なWindowStyle=None
ウィンドウがあり、透明性を許可し、タスクバーに表示されません。すべて正常です。自分でテストできるように、XAML を次に示します。
<Window x:Class="AltTabTest.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Name="TestWindow" Title="TestWindow"
WindowStyle="None" AllowsTransparency="True" ResizeMode="NoResize"
Background="Transparent" ShowInTaskbar="False"
Width="816" Height="820">
<Grid>
<Border BorderThickness="0" Background="LightBlue" CornerRadius="15" />
</Grid>
このウィンドウをコンパイルして実行したら、次の手順に従ってください。
- [デスクトップを表示] をクリックして、すべてのアプリを非表示にします
- Alt+Tab で WPF テスト アプリに戻る
- 水色の境界領域の外側 (デスクトップ ワークスペース) をクリックします。
- WPF Test App が魔法のように消えるのを観察する
- 必要に応じて、他の実行中のアプリに Alt+Tab キーを押して、WPF テスト アプリが魔法のように再表示されることを確認します
だから私の質問は、ここで一体何が起こっているのですか?! これは予想される動作ですか?もしそうなら、それを回避する方法はありますか?
Alt + Tabが解決された後、 WPFアプリが本当にフォーカスされていないように感じます。これは Windows 7 でテストされていることに注意してください。Vista または XP でこれをテストすることはできませんでした。アプリに本当にフォーカスを当てる方法が欲しいのですが、それが不可能な場合は、Alt + Tab アクションをトラップして無視する方法があるかどうか疑問に思っています。これが修正しようとしているアプリはロックダウン モードのアプリであるため、ユーザーはデスクトップ上で実行されているアプリから完全に離れることはできません。アドバイス、例、洞察、または正しい方向へのポイントをいただければ幸いです。=)