テキストボックスで選択された部分のテキストを取得する

テキストボックスで選択された部分のテキストを取得するコードを紹介します。

概要

テキストボックスで選択された部分のテキストを取得するには、TextBoxクラスのSelectedTextプロパティの値を参照します。

プログラム例

UI

下図のUIを準備します。TextBoxを2つContextMenuStripを1つ配置します。
テキストボックスで選択された部分のテキストを取得する:画像1

ContextMenuStripにメニュー要素を1つ追加します。
テキストボックスで選択された部分のテキストを取得する:画像2

プロパティ設定

作成したメニュー要素を選択します。
テキストボックスで選択された部分のテキストを取得する:画像3

Clickイベントを選択しイベントハンドラを作成します。
テキストボックスで選択された部分のテキストを取得する:画像4

上部のTextBox(textBox1)を選択し、ContextMenuStirpプロパティに"contextMenuStrip1"を設定します。
テキストボックスで選択された部分のテキストを取得する:画像5

コード

下記のコードを記述します。(ContextMenuStripに作成したメニュー要素のClickイベントハンドラを実装します。)
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace GetSelectionString
{
  public partial class FormMain : Form
  {
    public FormMain()
    {
      InitializeComponent();
    }

    private void ToolStripMenuItem_Select_Click(object sender, EventArgs e)
    {
      string selstr = textBox1.SelectedText;
      textBox2.Text += selstr;
    }
  }
}

実行結果

プロジェクトを実行します。下図のウィンドウが表示されます。
テキストボックスで選択された部分のテキストを取得する:画像6

上部のテキストボックスに入力します。
テキストボックスで選択された部分のテキストを取得する:画像7

ドラッグしてテキストボックスのドキュメントの一部分を選択します。
テキストボックスで選択された部分のテキストを取得する:画像8

マウスの右ボタンを押しポップアップメニュー(コンテキストメニュー)を表示します。メニューの[選択]をクリックします。
テキストボックスで選択された部分のテキストを取得する:画像9

選択した部分のテキストが下のテキストボックスに表示されます。
テキストボックスで選択された部分のテキストを取得する:画像10

テキストボックスで選択された部分のテキストが取得できました。

AuthorPortraitAlt
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
作成日: 2012-06-22
Copyright © 1995–2025 iPentec all rights reserverd.