C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[6]: Panelに配置されたコントロールの背景色


(過去ログ 54 を表示中)

[トピック内 10 記事 (1 - 10 表示)]  << 0 >>

■29690 / inTopicNo.1)  Panelに配置されたコントロールの背景色
  
□投稿者/ よう (1回)-(2008/12/12(Fri) 11:58:38)
よう さんの Web サイト

分類:[.NET 全般] 

VisualStudio 2008でC# .NETの開発をしています。

Panelに配置されたコントロールはPanelの背景色を変更(デザイン時)した場合、中に配置されたコントロールも同じ背景色に変更されますが、これを回避する方法はありますでしょうか?
配置するコントロールはUserControlを使っているので割と自由が利きます。最悪、BackColor以外にプロパティを作ってそっちを参照して背景色を決めることもできますが、あまりスマートではないので何か別の方法がありましたら教えてください。
引用返信 編集キー/
■29693 / inTopicNo.2)  Re[1]: Panelに配置されたコントロールの背景色
□投稿者/ .SHO (390回)-(2008/12/12(Fri) 12:42:14)
No29690 (よう さん) に返信

コントロールに個別にBackColorを設定するのではダメなんですか?
引用返信 編集キー/
■29701 / inTopicNo.3)  Re[2]: Panelに配置されたコントロールの背景色
□投稿者/ よう (2回)-(2008/12/12(Fri) 14:38:23)
よう さんの Web サイト
No29693 (.SHO さん) に返信
> ■No29690 (よう さん) に返信
>
> コントロールに個別にBackColorを設定するのではダメなんですか?

デザイン時に指定ではだめです。
コンパイルしなおすとPanelのBackColorが反映されてしまいます。
引用返信 編集キー/
■29702 / inTopicNo.4)  Re[3]: Panelに配置されたコントロールの背景色
□投稿者/ .SHO (394回)-(2008/12/12(Fri) 14:43:23)
No29701 (よう さん) に返信

> デザイン時に指定ではだめです。

では、実行時に指定されてはどうですか?
引用返信 編集キー/
■29703 / inTopicNo.5)  Re[3]: Panelに配置されたコントロールの背景色
□投稿者/ よねKEN (227回)-(2008/12/12(Fri) 14:53:11)
>>コントロールに個別にBackColorを設定するのではダメなんですか?
>
> デザイン時に指定ではだめです。
> コンパイルしなおすとPanelのBackColorが反映されてしまいます。

普通はそんなことにはならないはずです。

> Panelに配置されたコントロールはPanelの背景色を変更(デザイン時)した場合、中に配置されたコントロールも同じ背景色に変更されますが、

あるコントロールAのBackColorが明示的に設定されていない場合、
そのコントロールの親コントロールのBackColorと同じ色で表示されます。
ですので、プロパティウィンドウでコントロールAのBackColorプロパティを明示的に色を指定すればその色になります。

この辺の話は、
http://bbs.wankuma.com/index.cgi?mode=al2&namber=28699
のスレの No28821 での魔界の仮面弁士さんの回答でわかりやすく説明されています。
引用返信 編集キー/
■29709 / inTopicNo.6)  Re[4]: Panelに配置されたコントロールの背景色
□投稿者/ よう (3回)-(2008/12/12(Fri) 16:10:30)
よう さんの Web サイト
よねKENさん、ありがとうございます。

> あるコントロールAのBackColorが明示的に設定されていない場合、
> そのコントロールの親コントロールのBackColorと同じ色で表示されます。
> ですので、プロパティウィンドウでコントロールAのBackColorプロパティを明示的に色を指定すればその色になります。
>
> この辺の話は、
> http://bbs.wankuma.com/index.cgi?mode=al2&namber=28699
> のスレの No28821 での魔界の仮面弁士さんの回答でわかりやすく説明されています。

なるほど。他の.NETのコントロールでは確かにそのようになっていますね。
UserControlを継承してカスタムコントロールを作っているのですが、そのコントロールがデザイン時の設定値を覚えてくれていないようです。
BackColorについては描画するときに参照はしていますが、変更などはしていません。
この問題について何か情報がありましたら、また教えていただけると助かります。

よろしくお願いします。
引用返信 編集キー/
■29710 / inTopicNo.7)  Re[4]: Panelに配置されたコントロールの背景色
□投稿者/ よう (4回)-(2008/12/12(Fri) 16:11:49)
よう さんの Web サイト
.SHO さん、ありがとうございます。

>>デザイン時に指定ではだめです。
>
> では、実行時に指定されてはどうですか?

そのような対応は可能ですが、できればデザイン時に指定したいです。
引用返信 編集キー/
■29714 / inTopicNo.8)  Re[5]: Panelに配置されたコントロールの背景色
□投稿者/ 魔界の仮面弁士 (948回)-(2008/12/12(Fri) 16:33:29)
No29709 (よう さん) に返信
> UserControlを継承してカスタムコントロールを作っているのですが、
ここでいうデザイン時とは、UserControl 自身の開発時を指しているのでしょうか。
それとも、その UserConrol を Visual Studio 上で利用する時のことでしょうか。

> そのコントロールがデザイン時の設定値を覚えてくれていないようです。
ShouldSerializeBackColor / ResetBackColor は、どのように実装していますか?
引用返信 編集キー/
■29717 / inTopicNo.9)  Re[5]: Panelに配置されたコントロールの背景色
□投稿者/ よう (5回)-(2008/12/12(Fri) 16:43:41)
よう さんの Web サイト
すいません。自己解決しました。

> BackColorについては描画するときに参照はしていますが、変更などはしていません。
> この問題について何か情報がありましたら、また教えていただけると助かります。

すいません。BackColorを設定している箇所がありました。
お恥ずかしい><
引用返信 編集キー/
■30262 / inTopicNo.10)  Re[6]: Panelに配置されたコントロールの背景色
□投稿者/ よう (7回)-(2008/12/19(Fri) 16:48:29)
よう さんの Web サイト
No29717 (よう さん) に返信
> すいません。自己解決しました。
>
>>BackColorについては描画するときに参照はしていますが、変更などはしていません。
>>この問題について何か情報がありましたら、また教えていただけると助かります。
>
> すいません。BackColorを設定している箇所がありました。
> お恥ずかしい><
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -