- PR -

チェックボックスのサイズを変更したい

1
投稿者投稿内容
BB.NK
大ベテラン
会議室デビュー日: 2004/02/05
投稿数: 138
投稿日時: 2005-04-18 13:42
お世話になります。C#.NETでWebアプリケーションを開発しています。

高解像度または大画面表示用に既存Web画面の各コントロールのサイズを
大きくする作業を行っています。
(基本的には、Height、Widht等の値を変更するだけ)

質問は、、、
DataGridにWebコントロールのチェックボックスを貼り付けています。
しかし、Webコントロールのチェックボックスのプロパティを変更(Height、Width)
してもプロパティ値は変わってもチェックボックス自体のサイズ(見た目)は変わりません。

そこで、HTMLコントロール(?)に入替えて見たところサイズは任意に変更できました。
しかし、Webコントロールでは各行のチェックボックスに一意なid(DataGrid1_ctl1_checkbox1など)
が割り当てられますが、HTMLの場合、コーディング時に与えたidで配置されてしまいます。
これでは、どの行のチェックボックスかがわかりません。

第一にやりたいことは、チェックボックスの大きさを変更することです。
もし、HMTLコントロールを使用する場合、各行のチェックボックスに一意な
idを割り振る(もしくは一意に判別する)ためにはどのようにしたらよいでしょうか。
BB.NK
大ベテラン
会議室デビュー日: 2004/02/05
投稿数: 138
投稿日時: 2005-04-18 13:49
失礼しました。。。
情けない、、、。
サーバコントロールとして指定していないだけでした。。。
指定して一意なidが割り振られました。
HTMLコントロールのチェックボックスに変更してやってみます。

もし、Webコントロールでもサイズの変更ができるのであればご教授ください。
宜しくお願いします。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2005-04-18 23:49
 Webコントロールといえど、クライアントに行けばHTMLコントロールと同じコードがかかれるはずです。まずはソースで確認してみてはいかがでしょう?
_________________
べる
ぬし
会議室デビュー日: 2003/09/20
投稿数: 1093
投稿日時: 2005-04-19 01:03
Jittaさんの言うとおりまずHTMLを見てみる事を勧めます。(できればいろいろ条件を
変えて)。ただこれはそう単純な問題じゃないような気がします。

WebコントロールのCheckBoxではinputタグ(type="checkbox")がspanタグで囲まれて
出力されます。CheckBox1.WidthとかCheckBox1.StyleとかCheckBox1.Attributesとか
してもspanタグに属性がつくだけであり、inputタグにアクセスする方法がわからない
ということですね。継承したりしないでinputタグのstyleなどを変える方法は多分
ないのでしょうね。(私は見つけられなかった)

ひとつ強引な方法を思いつきました。CheckBox1にCssClassなりAttributesなりで
Class属性(ここでは"teststyle")をつける。スタイルシートで以下のようにする。
<style>
.teststyle input
{
width:500pt;height:500pt
}
</style>
・・ここまでするくらいならHtmlコントロール?


#チェックボックスってこんなに大きくなるんですね(ていうか大きさ可変なんですね)
#グラデーションもちゃんとかかってるし(IE6)

余談ですが.NET2.0ではCheckBoxにInputAttributesとかLabelAttributesなんていう
プロパティがあるので(私んとこのβでは動作してないみたいだが)中のタグに属性
付けられる予定なのでしょうね。
冬寂
ぬし
会議室デビュー日: 2002/09/17
投稿数: 449
投稿日時: 2005-04-19 10:07
引用:

ひとつ強引な方法を思いつきました。CheckBox1にCssClassなりAttributesなりで
Class属性(ここでは"teststyle")をつける。スタイルシートで以下のようにする。
<style>
.teststyle input
{
width:500pt;height:500pt
}
</style>


あれ?うちの環境のせいかもしれませんが、checkboxはこの方法で大きくなりませんでした。
(うちは未だにwin98,IE6です。.NETが入ってないとcheckboxの大きさ変わらないとかあるのかな?(汗))

大きさを変えたいだけなら(checkboxの大きさとかはIEでしか変わらないみたいですが)zoomをいじる手もあります。
bodyにセットすると全体の大きさが変わるから、BB.NKさんの目的にはいいかもしれません。
BB.NK
大ベテラン
会議室デビュー日: 2004/02/05
投稿数: 138
投稿日時: 2005-04-19 20:52
皆様お返事ありがとうございます。
HTMLコントロールで実装してしまいました。。。
というのも、サーバコントロールとして指定して、
これまでWebコントロールが使っていたidをそのまま指定やれば
他をいじることなく実現できてしまったので。。。

ただ、スタイルシートで指定することをほとんどやってこなかったので、
この機会に見直してみようと思います。
(社内工数は取れないので、いつできるかわかりませんが、、、)
べる
ぬし
会議室デビュー日: 2003/09/20
投稿数: 1093
投稿日時: 2005-04-19 23:18
引用:
ただ、スタイルシートで指定することをほとんどやってこなかったので、
この機会に見直してみようと思います。

上の例はかなり無理やりであり本来の使い道ではないのでHTMLコントロールで可能なら
そっちのほうが全然いいと思います。ちなみに上の例のスタイルは
class=teststyleであるタグの内側にあるinputタグに適用される、というものです。

引用:
あれ?うちの環境のせいかもしれませんが、checkboxはこの方法で大きくなりませんでした。
(うちは未だにwin98,IE6です。.NETが入ってないとcheckboxの大きさ変わらないとかあるのかな?(汗))

会社のWin2000+.NET1.1でも出来ました。win98だからというのはありえますね。
.NETが・・というのはなくはないでしょうけど考えにくいですね。FireFoxでは
大きくなりませんでした。(選択した時の枠だけ大きくなる)
ちなみに<style>は<head>の中に書いています。classが設定されるのはspanタグです。
1

スキルアップ/キャリアアップ(JOB@IT)