ページを作成しました。エミュレータのテーマがライトに変更されたときにテキストボックスの背景を変更したい。テーマを変更しているときに文字が表示されない。解決策はありますか?
3 に答える
Visual Studio内でデフォルトのTextBoxコントロールを使用する場合、完全にテーマに対応しています。自分で色を設定した場合は、コードビハインドでテーマ対応の変更を実行する必要があります。
詳細については、以下を参照してください:-
http://www.developer.nokia.com/Community/Wiki/ThemeawareWindowsPhoneapplication
私はあなたがTextBlock
ではなく参照していると思いますTextBox
(後者は自動的にスタイルをサポートしているため)。
などTextBlock
の属性なしでを宣言しないでください。使用可能なスタイルの完全なリストは、MSDN:WindowsPhoneのテーマリソースにあります。Style
Style={StaticResource PhoneTextNormalStyle}
また、関連性は次のとおりです。方法:WindowsPhoneにテーマリソースを適用する
注意:Mangoの設計方法により、テーマを変更した後にアプリケーションに戻っても、新しいテーマは適用されません。変更されたテーマを表示するには、アプリケーションを再起動する必要があります。
アップデート
スクリーンショットに基づいて、2つの選択肢があります。
- Reskin(Blendの「テンプレートの編集」)さまざまな色関連のプロパティがハードコーディングされているスタイルを再定義するために使用する各コントロール
- コントラストを向上させるために、白のテーマでは、別の明るい背景画像を使用してください。テーマ対応のリソースを定義する方法についてブログに書いています(また、他のSOの質問でも言及しています)。
簡単に言うと、テーマを送信するか、テーマを希望どおりに維持することができます。
アプリケーションのデフォルトとしてテーマを設定できます。アプリケーションにログインすると、電話のテーマが適切なテーマに変更され、ログアウトすると、元のテーマに戻ります。ここにリンクがあります。