リッチテキストコントロールの基本的な使い方について解説します。
リッチテキストコントロールはテキストを入力するテキストボックスと、書式を設定するツールバーから構成されます。 ユーザはテキストボックスに対して入力を行い、ツールバーのボタンを用いて書式設定などを行います。
(図)ツールバーとテキストボックス
フォームデザイン画面でスマートタグのメニューから「ツールバー項目の編集...」を選択すると、ツールバー項目を編集する ダイアログが開きます。ダイアログの「メンバ:」ペインでツールバーの項目を編集することができます。
コントロールに設定されているデータをRTF形式で保存するには、以下の2通りの方法があります。
ファイルを読み込むには、以下の2通りの方法があります。
テキストボックスに図を挿入するには、以下の2通りの方法があります。
DetectUrls プロパティをTrueに設定すると、 入力された文字列を自動的に解析し、URL文字列と判断された文字列にリンクを設定します。
設定されたリンクがクリックされると LinkClicked イベントが発生します。 このイベントをハンドルすることで、クリックされたURL文字列に応じた処理を行うことができます。 以下のサンプルコードでは、クリックされたURL文字列をシステムの既定のブラウザで開きます。
Imports System.Diagnostics Public Class Form1 Public Sub New ' フォームに配置されたGcRichTextBox1が初期化されます。 ' この呼び出しは、Windows フォーム デザイナで必要です。 InitializeComponent() ' InitializeComponent() 呼び出しの後で初期化を追加します。 End Sub Private Sub Form1_Load( ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles MyBase.Load ' URLの自動検出を有効にします。 ' 注意:デフォルトではTrueに設定されています。 GcRichTextBox1.DetectUrls = True ' URL文字列を入力します。 GcRichTextBox1.Text = "http://www.grapecity.com/tools/" ' LinkClickedイベントのハンドラを設定します。 AddHandler GcRichTextBox1.LinkClicked, AddressOf GcRichTextBox1_LinkClicked End Sub Private Sub GcRichTextBox1_LinkClicked( ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkClickedEventArgs) ' クリックされたURL文字列を開きます。 ' このコードでは、URLがシステムの既定のブラウザで開かれます。 Dim p As Process = New Process() p.StartInfo.FileName = e.LinkText p.Start() End Sub End Class
using System.Diagnostics; public partial class Form1 : Form { public Form1() { // フォームに配置されたgcRichTextBox1が初期化されます。 InitializeComponent(); } private void Form1_Load( object sender, EventArgs e ) { // URLの自動検出を有効にします。 // 注意:デフォルトではtrueに設定されています。 gcRichTextBox1.DetectUrls = true; // URL文字列を入力します。 gcRichTextBox1.Text = "http://www.grapecity.com/tools/"; // LinkClickedイベントのハンドラを設定します。 gcRichTextBox1.LinkClicked += new LinkClickedEventHandler( gcRichTextBox1_LinkClicked ); } void gcRichTextBox1_LinkClicked( object sender, LinkClickedEventArgs e ) { // クリックされたURL文字列を開きます。 // このコードでは、URLがシステムの既定のブラウザで開かれます。 Process p = new Process(); p.StartInfo.FileName = e.LinkText; p.Start(); } }