ホーム > コンピュータ > C# > WPF in C# > C#でテキストエディタ

ベクトルドロー・レベルゼロ+

RichTextBoxを使う[C# WPF]

最終更新日

概要

RichTextBoxは、リッチテキストが扱える、コンテナです。WPFのRichTextBoxで扱う、書式付きのテキストは、リッチテキストではなく、フロードキュメントです。

使用例は、無料で利用できる範囲のmsdnで見ることが可能ですが、ホームアプリとデスクトップアプリが混在しています。

professional版やCommunity版で作成されたコードだと、Blendのための名前空間が実行を阻害したりします。 そのため、慣れていないとサンプルコードを動かすだけでも大変です。

ここでは、msdnなど、Web上のサンプルコードを参考に、RichTextBoxを使用し、デスクトップアプリとして動作する簡単なエディタを作成します。

RichTextBoxの作成

新しいプロジェクに、RichTextBoxを作成します。

RichTextBoxをウィンドウに設置するだけで、アプリケーション内で文字が入力、編集できるウィンドウが作成できます。

コマンドの追加

WPFには、組み込みコマンドが用意されています。コントロールごとに機能が実装されたコマンド群です。

RichTextBoxコンポーネントには、編集コマンドとして、組み込みコマンドが実装されていますので、それを呼び出すだけで、編集機能が利用できます。

ツールバーに編集コマンドを追加する

ツールバーに、RichTextBoxコンポーネントの内容を書式設定する機能を追加します。 これらの機能は、EditingCommands クラスのメソッドとして提供されています。これを利用すると簡単にコマンドを実装できます。

アイコンイメージをリソースに追加する

ツールバーにアイコンボタンを表示させるためには、あらかじめ、アイコンイメージをリソースに追加しておく必要があります。 ここでは、アイコンのためのイメージファイルを、リソースに追加する方法を紹介します。

RichTextBoxに、ファイルと編集ツールバーを設置する。

ファイルと編集ツールバーのついた、RichTextBoxを使用したエディタが作成します。 ファイル機能は、msdnのサンプルコードが紹介されていたため、組み込みコマンドではなく、コードで実装したものを使用しています。

これで、書式付きテキストやプレーンテキストを操作するアプリケーションを作成するためのコードを検証するツールの雛形が完成しました。

コンテンツの保存、読み込み、および印刷コマンドの動作の確認

より、エディタのように機能させるために、RichTextBoxコンポーネントに入力した内容を、保存、読み込み、および印刷する方法を紹介します。

RichTextBoxで提供されているファイルコマンドツールを実装します。

オープンファイルダイアログとオープンセーブダイアログでファイルを指定できるようにします。

ここでは、ダイアログボックスで、ファイル名を指定する方法を紹介します。

RichTextBoxに、ファイルと編集ツールバーを設置する

WPFで、ファイルと編集ツールバーのついた、RichTextBoxを使用したエディタが作成できました。

WPFのコマンドライブラリ

基本的なコマンドは、WPFのライブラリのあらかじめ用意されています。積極的に、これらのコマンドを利用することで、 実装の手間が軽減されるとともに、複数のアプリケーション間のコマンドで統一された操作体系が実現できます。

WPFの、RichTextBoxに、プログラムで、テキストを追加する

WPFの、RichTextBoxは、FormのRichTextBoxと異なり、フロードキュメントで書式付きテキストを扱います。 そのため、プログラムから、テキストを操作する場合の方法が異なります。

参考リンク

RichTextBox の概要(外部リンク)

ページトップへ
C#トップ
WPF in C#
C#でテキストエディタ
Copyright (C) 2011-2016 kukekko All Rights Reserved.
kukekko@gmail.com
ご連絡の際はアドレスの@は半角にしてください。 また、お問い合わせページのURLの明記をお願いします。
「掲載内容は私自身の見解であり、所属する組織を代表するものではありません 」。
inserted by FC2 system