連載

Windows業務アプリケーション開発 Q&A #7

グレープシティ株式会社 八巻 雄哉
2006/12/16

本記事は、業務アプリケーション向けコンポーネントのベンダであるグレープシティのテクニカル・サポート担当に対して、実際にプログラマーから問い合わせがあった質問を取り上げて解説しています。

ASP.NETで背景色が印刷されない

 ASP.NETでWebアプリケーションを開発しています。グリッド・コントロールでセルの背景色を変更している部分があるのですが、Internet Explorer(以下IE)上では正しくその色が表示されるものの、印刷すると背景色が消えてしまいます。なぜでしょうか?

 IEやFirefoxのデフォルト設定では、背景色や背景画像は印刷されません。具体的には、HTMLのタグではBgcolorプロパティとBackgroundプロパティ、CSSではbackground-colorプロパティとbackground-imageプロパティが該当します。

 例えば、ASP.NETの標準コントロールであるGridViewコントロールでセルの背景色を設定した場合、出力されるHTMLではCSSのbackground-colorプロパティによって背景色が表示されています。このため、印刷には反映されません。

 Webブラウザ側の設定を変更することで、背景色と背景画像を印刷できるようになります。

【IEの場合】

  1. メニューの[ツール]−[インターネット オプション]をクリックします。
  2. [詳細設定]タブを開き、[背景の色とイメージを印刷する]にチェックを入れ、[OK]ボタンをクリックします。


IEで背景色や背景画像が印刷されるようにするための設定
[インターネット オプション]ダイアログを開き、[詳細設定]タブで[背景の色とイメージを印刷する]をチェックする。

【Firefoxの場合】

  1. メニューの[ファイル]−[ページ設定]をクリックします。
  2. [書式とオプション]タブにある[背景も印刷(配色と画像)]にチェックを入れ、[OK]ボタンをクリックします。


Firefoxで背景色や背景画像が印刷されるようにするための設定
[ページ設定]ダイアログを開き、[書式とオプション]タブで[背景も印刷(配色と画像)]をチェックする。

【参考】 マイクロソフト・サポート技術情報:ホームページの背景や画像が印刷されない場合の対処方法

 

.NETでも日本語の変数名を使いたい

 以前はMicrosoft Access(以下Access)で開発していましたが、今回.NETでWindowsアプリケーションを構築することになりました。Accessでは変数名に日本語(全角文字)を使用していたのですが、.NETでも日本語の変数名を使用できるのでしょうか?

 Accessでは、デフォルトのコントロール名が「ラベル1」などのように全角文字が使用されていることもあり、プロシージャや変数の名前にも全角文字を使用されている方はそれほど少数派ではないようです。

 ただし、下記のマイクロソフト・サポート技術情報には「全角文字の言語では、データベースのオブジェクト名やコントロール名に全角文字を使用しないでください。」との記載もありますので、注意が必要です。

マイクロソフト・サポート技術情報:
[ACC2003] Access での作業時に使用すべきでない特殊文字

 プロシージャ、変数、定数の名前には全角文字を使用することが可能ですが、この場合には1文字目は半角英文字である必要があります。

 一方、Visual Studio .NET、およびそれ以降のバージョンである2003、2005では、プログラミング言語と共通言語ランタイム(CLR)において、Unicodeの識別子に正式に対応しています。このため、変数やクラスの名前などに1文字目から全角文字を使用することが可能になっています。

【参考】 マイクロソフト・サポート技術情報:Visual Studio .NET 以降の各プログラミング言語と共通言語ランタイムで識別子に日本語の文字を使用できます

 ちなみに、Visual Basic 6.0(以下VB 6)の場合、内部の文字列処理にUnicodeを使用しているものの、多くのコントロールにおける文字表示やIDE部分などがUnicodeに対応していませんでした。

【参考】 マイクロソフト・サポート技術情報:Visual Basic でプロジェクト名に日本語の文字を使用できない

 このためかどうかは定かではありませんが、VB 6ではプロシージャや変数の名前に全角文字を使用することはできません。End of Article


八巻 雄哉(やまき ゆうや)
グレープシティ株式会社 テクニカルエバンジェリスト

2003年グレープシティ入社。PowerToolsシリーズのテクニカル・サポートを担当する傍ら、製品開発やマーケティングにも従事。現在は.NETとPowerToolsシリーズ普及のため、エバンジェリストとして活動中。最近の関心の対象は、WPFを業務アプリケーションにどのように活用していけるのかということ。http://d.hatena.ne.jp/Yamaki/にてBlogを公開中。

 

インデックス・ページヘ  「Windows業務アプリケーション開発 Q&A」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

注目のテーマ

業務アプリInsider 記事ランキング

本日 月間
ソリューションFLASH