質問

私として生まれ変わろうとしているコンポーネントのラインナップアプリは、通常のWindowsアプリは、XBAPはSilverlight).また、本アプリのウィンドウ透明に対応し、ショーを通じて、デスクトップします。

しかし指定ツールヒントテキスト、ボタン、カーソルを合わせ、ツールチップが表示され (z順のメインウィンドウ!

いスクリーンショット場所:*他のアプリoverlappsブロック、部分的に透明ウィンドウに表示します。*カーソルを合わせ、ツールチップからボタンが表示され、フロントのその他のアプリです。※カーソルを合わせ、ツールチップはフロントのその他のアプリで の一部を透明化します。

んなことが既知の問題のコンポーネントのラインナップエンジンの32ビットXPおよびが発生しません。

僕が求めているのは、固定/回避策.

役に立ちましたか?

解決 3

OK-は、ここで私は、回避策として、見つけたものです。

窓もTopMostのを作っているとき、

ツールヒントの問題は消えます。

私の窓にキーボードフォーカスがあるとき、

しかし、私は私の窓は、最上位にしたくないので、私はそれだけを行います:

private void Window_GotKeyboardFocus(object sender, KeyboardFocusChangedEventArgs e)
{
    this.Topmost = true;
}

private void Window_LostKeyboardFocus(object sender, KeyboardFocusChangedEventArgs e)
{
    this.Topmost = false;
}

それから私は私のウィンドウが最上位である場合にのみ、各ツールヒントを有効にするには、バインディングを使用します:

ToolTipService="{Binding ElementName=MainWindow, Path=Topmost}"

このは、それが正しく動作する場合を除き、ツールヒントをオフにします。 私の窓はとにかくフォーカスしていないときに、実際にツールチップを必要としないでください。

だけ迷惑な事は今/オフが結合にツールチップを定義するすべての要素に行わなければならないことである。

他のヒント

あなたが一番上にしたいのUIElement上.SetValue(Canvas.ZIndex、100)の方法を試してみてください。 (私は上部に素子を強制的に、100を使用する)

この知の問題のWIndows XPおよびコンポーネントのラインナップなどこちらをご参照 接続).

を避けることができますの問題 を使用しない層の窓 (一部のフレーム)。ないかと考えていいの窓 最=true, が、私にとって、なかなかできない非常に良い解決法とはわかりません。

わからない場合はMS取り組んでこの問題だと思うからかなりの深いグラフィック層ださい。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top