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

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

概要

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

プログラム例

UI

下図のUIを準備します。TextBoxを2つContextMenuStripを1つ配置します。


ContextMenuStripにメニュー要素を1つ追加します。

プロパティ設定

作成したメニュー要素を選択します。


Clickイベントを選択しイベントハンドラを作成します。


上部のTextBox(textBox1)を選択し、ContextMenuStirpプロパティに"contextMenuStrip1"を設定します。

コード

下記のコードを記述します。(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;
    }
  }
}

実行結果

プロジェクトを実行します。下図のウィンドウが表示されます。


上部のテキストボックスに入力します。


ドラッグしてテキストボックスのドキュメントの一部分を選択します。


マウスの右ボタンを押しポップアップメニュー(コンテキストメニュー)を表示します。メニューの[選択]をクリックします。


選択した部分のテキストが下のテキストボックスに表示されます。


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

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