ASP.NETの基本:TextBoxコントロールを使う
文:Tony Patton(Special to TecRepublic)
翻訳校正:石橋啓一郎
翻訳校正:石橋啓一郎
2008/02/19 12:01
TextBoxはASP.NETのウェブアプリケーションでは非常に広く使われており、多彩な機能やプロパティを備えているが、これを使いこなしている開発者は少ない。この記事では、TextBoxのさまざまな機能について紹介する。
開発者は、新しい方法や気の利いた方法で結果を出力するプログラミングの基本的な選択肢を見落としていることは多い。これは、標準的なASP.NETの機能の多くに言えることだ。WebコントロールのTextBoxがその好例で、このコントロールはアプリケーションを作る際に多くの選択肢を提供してくれる。ここでは、TexBoxコントロールを詳しく見ていくことにする。
あらゆる場所で使われるTextBox
TextBoxコントロールを使っていないASP.NETのウェブアプリケーションは稀だ。代わりに昔から使われているHTMLのinputとtextarea要素を使うことも出来るが、機能も少なくASP.NETとの統合でも不便だ。
TextBoxコントロールの基本的な前提は、ユーザー入力を受け取ることだ。これは、ユーザーがユーザー名や複数行にわたる文章を入力するというような単純なものかもしれない。このコントロールは、コード中でこれを行うための多くのメソッドやプロパティを提供している。
プログラムのコントロール
System.Web.UI.WebControls名前空間のTextBoxクラスはプログラムからのアクセスを提供する。TextBoxの外見や動作は、プロパティで操作できる。次のリストはプロパティの例だ。
- AutoPostBack:このコントロールでAutoPostBack機能を有効にするかどうかを指定するブール値。これによって、フィールドの内容が変化した際に、自動的にフォームの内容をサーバーに送り返すかどうかを指定する。
- BackColor:コントロールの背景色。CSSからもコントロールできる。
- BorderColor:コントロールの外側に表示される罫線(使われている場合)の色。
- BorderWidth:ページ上のコントロールの外側の罫線の幅。
- CausesValidation:フォームのポストバックが実行されている際に、検証を行うかどうかを指定するブール値。
- Columns:TextBoxコントロールの表示幅。
- CssClass:コントロールにCSSクラスを割り当てることを可能にする。
- Font:コントロールと関連づけられているさまざまなフォント属性。CSSを使うアプローチの方が望ましいが、Fontクラスはテキストをボールド、イタリック、強調、下線などで表示するかどうかを指定するプロパティを含むほかに、フォントサイズ、フォント名なども持っている。
- ForeColor:このフィールドに表示されるテキストの色。CSSを使う方が望ましい。
- Height:コントロールの縦の大きさを取得あるいは設定する。
- MaxLength:このフィールドで許される最大キャラクタ数。
- ReadOnly:コントロールをユーザーが編集できるか、読み取り専用かを指定するブール値。
- Rows:複数行を使う設定の場合のTextBoxの行数。
- SkinId:TextBoxの外見をコントロールするため、スキンを設定する。
- Text:フィールドに含まれるテキスト。
- TextMode:コントロールのテキストモード。TextBoxModeクラスで有効な値は、single-line、multiline、passwordのいずれかになる。passwordに設定すると入力されるテキストはマスクされるため、パスワードは表示されないが、コードの中からは操作や保存が可能だ。
- Visible:このコントロールを表示するか非表示にするかを指定するブール値。
- Wrap:フィールド内でテキストを折り返しするかどうかを指定するブール値。
次のC#の例は、ページのロード中に使われるプロパティの例を示している。このコードに含まれているページには、TextBox1という名前のTextBoxコントロールが1つ含まれている。このコードではTextBoxをmultilineにし、フォントのプロパティと色を設定している。
protected void Page_Load(object sender, EventArgs e) {
TextBox1.AutoPostBack = true;
TextBox1.BackColor = System.Drawing.Color.LightBlue;
TextBox1.BorderWidth = 4;
TextBox1.Columns = 80;
TextBox1.Font.Bold = true;
TextBox1.Font.Italic = false;
TextBox1.Font.Size = FontUnit.Larger;
TextBox1.ForeColor = System.Drawing.Color.Black;
TextBox1.Rows = 40;
TextBox1.TextMode = TextBoxMode.MultiLine;
TextBox1.Wrap = true;
TextBox1.Visible = true;
TextBox1.Text = "This is a test.";
}
これと同じ動作をするVBのコードは次のようになる。
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load TextBox1.AutoPostBack = True TextBox1.BackColor = System.Drawing.Color.LightBlue TextBox1.BorderWidth = 4 TextBox1.Columns = 80 TextBox1.Font.Bold = True TextBox1.Font.Italic = False TextBox1.Font.Size = FontUnit.Larger TextBox1.ForeColor = System.Drawing.Color.Black TextBox1.Rows = 40 TextBox1.TextMode = TextBoxMode.MultiLine TextBox1.Wrap = True TextBox1.Visible = True TextBox1.Text = "This is a test." End Sub
- 0人の推薦記事
- 0人がクリップ
-
ソーシャルブックマーク(-)
- トラックバック(0)
- 2日前のトップ記事
- 3日前
- 4日前
- 5日前
- 6日前
- ホワイトペーパー
- 話題のタグ
小技
フレームワーク
Mac OS X
C/C++
JavaScript
Flash
開発環境
Leopard
iPhone
Ruby
SOA
PHP
Solaris
仮想化
Webアプリケーション開発
Ajax
Webデザイン
Windows
XHTML
Apache
リファレンス
iPhone 3G
ライブラリ
入門
Apple
Tips
Opera
ブラウザ
server
Safari
CSS
RIA
Mozilla
Internet Explorer
オープンソース
Python
Eclipse
Google
CSS 3
Java
Microsoft
イロハ
Off Topic
Linux
Database
Adobe
HTML
iPod touch
Firefox
Firefox 3
話題のタグを見る »
動画再生耐久レース―フル充電からどれだけ耐えた?
心当たりありませんか--あなたの上司がイヤがる5つの話し方
フォームデザイン虎の巻:複数の選択肢を提供する
フォトレポート:技術サポートの悪夢
無料の「Oracle Database XE」で高速バッチ処理:実装のポイント
Firefoxで情報をカンタン・ベンリに整理する
iPhone Safari、Acidテストでは高得点でも…… Firefoxは載らないの?:WebサイトのiPhone 3G対応問題を考える(ソフト編)
WebサイトのiPhone 3G対応問題を考える(ハード編)
フォトレポート:時代を振り返る--「MS-DOS 4」のインストール
SOAと仮想化の関係は?--常に進化を続けるBEAのミドルウェア戦略
ウェブ開発の生産性はどうしたら上がる?--MODIPHI Appsで半日で作るマッシュアップサイト(1)
JailBreakついに:PwnageTool公開
プロジェクトの進行でよくある4つのトラブル
Techno Exchange
ZDNet Japan ホスティング特集
ZDNet Japan Green IT
DELLが掲げる「新・仮想化アセスメントサービス」