. C# TextBoxコントロールの基本的な使い方とプロパティ
C# TextBoxコントロールの基本的な使い方とプロパティ
C# TextBoxコントロールの基本的な使い方とプロパティ

[C#] TextBoxコントロールの基本的な使い方とプロパティ

C#のTextBoxコントロールは、ユーザーからテキスト入力を受け取るためのUI要素です。 基本的な使い方としては、Windows FormsアプリケーションでフォームにTextBoxを配置し、プロパティを設定して動作をカスタマイズします。 主なプロパティには、 Text (現在のテキスト内容)、 MaxLength (入力可能な最大文字数)、 ReadOnly (読み取り専用にするかどうか)、 Multiline (複数行入力を許可するかどうか)などがあります。 イベントとしては、 TextChanged (テキストが変更されたときに発生)や KeyPress (キーが押されたときに発生)などがあり、これらを利用して入力内容の検証や動的なUI更新を行います。

TextBoxコントロールの概要

TextBoxとは TextBoxの用途 用途説明ユーザー入力ユーザーからのテキストデータの受け取り検索機能検索条件を入力するためのフィールドパスワード入力セキュリティのためにパスワードを隠すコメント入力ユーザーからのフィードバックやコメントを受け取る TextBoxの基本的な配置方法
  1. ツールボックスからTextBoxコントロールを選択します。
  2. フォーム上にドラッグ&ドロップします。
  3. プロパティウィンドウで、必要なプロパティ(例:Name、Text、Sizeなど)を設定します。
partial class MyForm : Form < private TextBox myTextBox; public MyForm() < InitializeComponent(); // フォームの初期化 myTextBox = new TextBox(); // TextBoxのインスタンスを作成 myTextBox.Location = new Point(10, 10); // 位置を設定 myTextBox.Size = new Size(200, 30); // サイズを設定 this.Controls.Add(myTextBox); // フォームに追加 >>

このコードでは、 myTextBox という名前のTextBoxを作成し、フォームの指定した位置に配置しています。

TextBoxの基本プロパティ

Textプロパティ myTextBox.Text = "初期値"; // TextBoxに初期値を設定 string inputText = myTextBox.Text; // ユーザーが入力したテキストを取得 MaxLengthプロパティ myTextBox.MaxLength = 20; // 最大文字数を20に設定 ReadOnlyプロパティ myTextBox.ReadOnly = true; // TextBoxを読み取り専用に設定 Multilineプロパティ myTextBox.Multiline = true; // TextBoxを複数行入力可能に設定 myTextBox.Size = new Size(200, 100); // サイズを調整 PasswordCharプロパティ myTextBox.PasswordChar = '●'; // 入力された文字を●で隠す

TextBoxのイベント

TextChangedイベント myTextBox.TextChanged += (sender, e) => < // テキストが変更されたときの処理 Console.WriteLine("入力内容が変更されました: " + myTextBox.Text); >; KeyPressイベント myTextBox.KeyPress += (sender, e) => < // 数字以外の入力を無効にする if (!char.IsDigit(e.KeyChar) && e.KeyChar != (char)Keys.Back) < e.Handled = true; // 入力を無効にする >>; KeyDownイベント myTextBox.KeyDown += (sender, e) => < // Enterキーが押されたときの処理 if (e.KeyCode == Keys.Enter) < Console.WriteLine("Enterキーが押されました。"); e.SuppressKeyPress = true; // Enterキーのデフォルト動作を抑制 >>; KeyUpイベント myTextBox.KeyUp += (sender, e) => < // 特定のキーが離されたときの処理 if (e.KeyCode == Keys.Escape) < Console.WriteLine("Escapeキーが離されました。"); >>;

TextBoxのカスタマイズ

フォントと色の設定 myTextBox.Font = new Font("メイリオ", 12, FontStyle.Regular); // フォントを設定 myTextBox.ForeColor = Color.Blue; // テキストの色を青に設定 myTextBox.BackColor = Color.LightYellow; // 背景色を薄い黄色に設定 サイズと位置の調整

Size プロパティや Location プロパティを使用して、TextBoxの大きさや配置を変更できます。

myTextBox.Size = new Size(250, 40); // サイズを250x40に設定 myTextBox.Location = new Point(20, 50); // 位置を(20, 50)に設定 境界線のスタイル変更

デフォルトでは、TextBoxは標準の境界線を持っていますが、 BorderStyle プロパティを使用して、境界線のスタイルを変更できます。

myTextBox.BorderStyle = BorderStyle.FixedSingle; // 境界線を単一の固定スタイルに設定

TextBoxの応用例

入力内容のリアルタイム検証

例えば、メールアドレスの形式をチェックする場合、 TextChanged イベントを利用して、入力内容が正しいかどうかを確認し、エラーメッセージを表示することができます。

myTextBox.TextChanged += (sender, e) => < string inputText = myTextBox.Text; if (!IsValidEmail(inputText)) // メールアドレスの形式を検証 < Console.WriteLine("無効なメールアドレスです。"); >>; private bool IsValidEmail(string email) < // 簡易的なメールアドレスの検証ロジック return email.Contains("@") && email.Contains("."); > 自動補完機能の実装 private List suggestions = new List < "apple", "banana", "cherry", "date" >; myTextBox.TextChanged += (sender, e) => < string inputText = myTextBox.Text; var filteredSuggestions = suggestions.Where(s =>s.StartsWith(inputText)).ToList(); // 候補を表示する処理(例:ListBoxを使用) ShowSuggestions(filteredSuggestions); >; private void ShowSuggestions(List suggestions) < // 候補を表示するための処理を実装 > 複数行入力の活用

TextBoxの Multiline プロパティを利用して、複数行のテキストを入力できるようにすることで、ユーザーからの詳細な情報を受け取ることができます。

myTextBox.Multiline = true; // 複数行入力を有効にする myTextBox.Size = new Size(300, 100); // サイズを調整 myTextBox.ScrollBars = ScrollBars.Vertical; // 縦スクロールバーを表示

まとめ

URLをコピー URLをコピーしました 2025-04-15 更新日: 2025-04-15 関連記事 [C#] TextBoxでの文字数制限の設定方法 [C#] TextBoxの文字色を変更する方法 [C#] TextBoxで複数行入力を実現する方法 [C#] TextBoxから文字列を取得する方法 [C#] TextBoxで数値のみを入力可能にする方法 [C#] TextBoxで半角文字のみを許可する方法 [C#] TextBoxの背景色を変更する方法 [C#] TextBoxを非表示にする方法 [C#] TextBoxで半角英数字のみを許可する方法 [C#] TextBoxで数値と小数点のみを許可する方法
  • Label (10)
  • LinkLabel (8)
  • Button (10)
  • RadioButton (9)
  • TextBox (13)
  • RichTextBox (10)
  • MaskedTextBox (10)
  • ListBox (10)
  • ListView (11)
  • CheckBox (10)
  • CheckedListBox (7)
  • ComboBox (9)
  • PictureBox (10)
  • TreeView (10)
  • DateTimePicker (9)
  • MonthCalendar (10)
  • ProgressBar (10)
  • NumericUpDown (12)
  • WebBrowser (10)
  • ToolTip (10)
  • NotifyIcon (11)
📎📎📎📎📎📎📎📎📎📎