2011-10-31 3 views
0

[EDITED]いくつかの試行後WPFリボンがXP

でタイトルバーのスタイルを変更し、私はそれがタイトルバーのスタイルが正しくレンダリングない原因マイクロソフトのWPFリボンだったが分かりました。 XPでリボンなし

アプリケーション:XPでのリボンとenter image description here

アプリケーション:enter image description here

は、私はすでにXPスタイルのようにテーマを設定しています。まだ修正されていません。 Microsoft Ribbonのバグですか、何か不足していますか?一方、ウィンドウ7では、OKをレンダリングします。

WPF C#.NET 4、VS2010で開発してください。

答えて

0

なぜ気になりますか?これは、あなたが送信した2枚と3枚の写真のように、AeroをVistaまたは7では有効または無効にし、XPではテーマを有効または無効にするユーザー設定です。

一般に、これは無視してください。リボンUIはOffice 2007と2010では同じですが、リボンはアプリケーションウィンドウを完全にスキニングしているためです。

私が提案したのは、Aeroが有効になっているVistaを使用すると、あなたのアプリケーションが古典的なWin2000アプリケーションのように見えなくなるため、スキンを使用して同じことを行うか、単にこれを無視することです。

+1

を使用している場合、私はXPスタイルを使用するようにXPで設定した上記のすべてのOS上でまったく同じに見えますWindows 7のスタイルthemseを持っています。しかし、私がテーマを無視すると、何らかの形で私のアプリケーションがクラシックなテーマを表示します。これはユーザーまたは私が見たいものではありません。 XPスタイルを表示するかどうかにかかわらず、XPスタイルを表示するアプリケーションを取得できません。これが私がテーマを構成しようとする理由です。または私は何かを逃していますか? – KMC

0

これは、使用しているOSのデフォルトテーマを使用するため、これはウィンドウタイトルバーの問題です。

私は、あなたのアプリケーションのすべてのウィンドウに対してウィンドウズルックアンドフィールを感じさせるカスタムウィンドウスタイルを実装することによってスタイルを中和することをお勧めします。最新の拡張WPFツールキットのMessageBoxコントロールを見てください。

それはあなたが

Window.AllowsTransparency="False" 
    Window.WindowStyle="None" 
    Window.Style="{StaticResource Windows7WindowStyle}" 
+0

私はWindowStyleを無効にすることはできません。 XPではなく7で動作します。編集された質問を参照してください。 – KMC

+0

私はXP、7、Vistaでこれらのスタイルをうまく使っています。 'WindowStyle'を' None'と指定すると、どんなエラーが出ますか? –

関連する問題