テキストボックスの選択されているテキスト(文字列)を取得・設定する [C#] TextBox

Windowsフォームアプリケーションのテキストボックスの選択されているテキスト(文字列)を取得、設定する方法を紹介します。

本記事では、Visual Studioで作成したC#のWindowsフォームアプリケーションのプロジェクトに記述するコードを記載します。
Windowsフォームアプリケーションのプロジェクトを作成する方法については、以下の記事を参照してください。

Windowsフォームアプリケーションのプロジェクト(ソリューション)を作成する。[C#]
Visual StudioでC#のWindowsフォームアプリケーションのプロジェクト(ソリューション)を作成する方法を記載します。 ...

選択されているテキスト(文字列)の取得

テキストボックスの選択されているテキスト(文字列)を取得するには、System.Windows.Forms名前空間のTextBoxクラスのSelectedTextプロパティを使用します。

SelectedTextプロパティは選択されているテキスト(文字列)がない場合は、長さが0の文字列(空文字列)を返します。

選択されているテキスト(文字列)の設定

SelectedTextプロパティでは、テキストボックスの選択されているテキスト(文字列)を設定することもできます。

サンプルプログラム

テキストボックスの選択されているテキスト(文字列)を取得、設定するサンプルプログラムを作成します。

ユーザーインターフェース

作成するフォームには、文字列を入力するテキストボックス(textBox1)、選択されているテキスト(文字列)を取得するボタン(button1)、選択されているテキスト(文字列)を表示、または選択されているテキスト(文字列)を入力するテキストボックス(textBox2)、選択されているテキスト(文字列)を設定するボタン(button2)を配置します。

テキストボックスの選択されているテキスト(文字列)を取得、設定するサンプルプログラムのフォームデザイン

文字列を入力するテキストを編集するテキストボックス(textBox1)は、複数行入力できるようにしておきます。

複数行入力可能なテキストボックスの設定については、以下の記事を参考にしてください。

テキストボックスに複数行の文字列を入力できるように設定する [C#] TextBox
Windowsフォームアプリケーションのテキストボックス(TextBox)に改行(リターン)を入力できるようにする方法を紹介します。 ...

ソースコード

ボタンをクリックした時の処理を実装します。

プログラムの実行

作成したプロジェクトをビルドして実行(デバッグ)します。

テキストボックスの選択されているテキスト(文字列)を取得、設定するサンプルプログラムを実行して起動

文字列を入力するテキストボックス(textBox1)にテキストを入力します。

テキストボックスの選択されているテキスト(文字列)を取得、設定するサンプルプログラムで文字列を入力

テキスト(文字列)を選択します。

テキストボックスの選択されているテキスト(文字列)を取得、設定するサンプルプログラムで文字列を選択

取得ボタン(button1)をクリックすると、選択されているテキスト(文字列)が表示されます。

テキストボックスの選択されているテキスト(文字列)を取得、設定するサンプルプログラムで選択されているテキスト(文字列)を取得して表示

今度は選択されているテキスト(文字列)に、設定するテキスト(文字列)を入力します。

テキストボックスの選択されているテキスト(文字列)を取得、設定するサンプルプログラムで選択されているテキスト(文字列)に設定するテキスト文字列を入力

設定ボタン(button2)をクリックすると、入力した文字が選択されていた位置に設定(上書き挿入)されます。

テキストボックスの選択されているテキスト(文字列)を取得、設定するサンプルプログラムで選択されているテキスト(文字列)位置を設定

本記事でご紹介した選択されているテキスト(文字列)の取得と設定は、System.Windows.Forms名前空間のRichTextBoxクラスにも適用できます。

TextBoxクラス(RichTextBoxクラス)には、SelectedTextプロパティの他に、テキストボックスの文字の入力位置(キャレット)を取得、設定するSelectionStartプロパティ、テキストボックスの選択されているテキストの文字数を取得、設定するSelectionLengthプロパティが用意されています。

SelectionStartプロパティとSelectionLengthプロパティについては、以下の記事を参考にしてください。

テキストボックスの文字の入力位置(キャレット)を取得・設定する [C#] TextBox
Windowsフォームアプリケーションのテキストボックスの文字の入力位置(キャレット)を取得、設定する方法を紹介します。 本記事では、...
テキストボックスの選択されているテキストの文字数を取得・設定する [C#] TextBox
Windowsフォームアプリケーションのテキストボックスの選択されているテキストの文字数を取得、設定する方法を紹介します。 本記事では...