バージョン

クリップボードの管理 (xamRichTextEditor)

トピックの概要

目的

このトピックは、 xamRichTextEditor ™ コントロールのクリップボードの操作について、開発者の観点から説明します。

前提条件

このトピックをより理解するために、以下のトピックを参照することをお勧めします。

トピック 目的

このトピックでは、 xamRichTextEditor コントロールがサポートする機能の概要を説明します。

このトピックは、 xamRichTextEditor でコンテンツをプログラム処理する際に必要なドキュメントのコンテンツ論理構造を説明します。

このトピックでは、 xamRichTextEditor を短時間で起動、実行するために役立つ詳細な操作方法を紹介します。

xamRichTextEditor のクリップボード サポートとは

はじめに

xamRichTextEditor コントロールでは、クリップボード操作による切り取り、コピー、貼り付けができます。コンテンツの一部を異なる場所に移動またはコピーすると、ドキュメントのリッチ コンテンツを編集できるようになります。また、他のアプリケーションからのリッチ テキスト コンテンツの貼り付けおよび他のアプリケーションへの貼り付けもできます。

切り取りおよびコピー操作を利用するには、 xamRichTextEditor でコンテンツを選択する必要があります。貼り付け操作では、コンテンツの選択が不要な場合もあります。

  • ドキュメントに選択したコンテンツがない場合、クリップボードのコンテンツが現在のカレット位置の後ろに挿入されます。

  • ドキュメントに選択したコンテンツがある場合、クリップボードのコンテンツが現在選択されたコンテンツと置換されます。

クリップボードによる切り取り

概要

クリップボードによる切り取りでは、選択したコンテンツをドキュメントからクリップボードに移動します。コンテンツはドキュメントから削除されます。

詳細

目的: 実行する処理: 詳細:

コマンドを使用した切り取り操作の実行

RichTextEditorCommandSource クラスのインスタンス化

以下のプロパティを設定します。

メソッドを使用した切り取り操作の実行

切り取りメソッドの起動

コマンドを使用したコード例

XAML の場合:

<Button Content="Cut">
    <ig:Commanding.Command>
        <igPrim:RichTextEditorCommandSource EventName="Click" CommandType="Cut" />
    </ig:Commanding.Command>
</Button>

メソッドを使用したコード例

C# の場合:

this.xamRichTextEditor1.ActiveDocumentView.Selection.Cut();

Visual Basic の場合:

Me.xamRichTextEditor1.ActiveDocumentView.Selection.Cut()

クリップボードによるコピー

概要

クリップボードによるコピーでは、選択したコンテンツをドキュメントからクリップボードにコピーします。

詳細

目的: 実行する処理: 詳細:

コマンドを使用したコピー操作の実行

RichTextEditorCommandSource クラスのインスタンス化

以下のプロパティを設定します。

EventName

CommandType

メソッドを使用したコピー操作の実行

コピーメソッドの起動

コマンドを使用したコード例

XAML の場合:

<Button Content="Copy">
    <ig:Commanding.Command>
        <igPrim:RichTextEditorCommandSource EventName="Click" CommandType="Copy" />
    </ig:Commanding.Command>
</Button>

メソッドを使用したコード例

C# の場合:

this.xamRichTextEditor1.ActiveDocumentView.Selection.Copy();

Visual Basic の場合:

Me.xamRichTextEditor1.ActiveDocumentView.Selection.Copy()

クリップボードにより貼り付け

概要

クリップボードによる貼り付けでは、状況に応じて、 xamRichTextEditor コントロールの現在のカレット位置にクリップボードのコンテンツを挿入する、またはドキュメントで選択したコンテンツと置換します。

詳細

目的: 実行する処理: 詳細:

コマンドを使用した貼り付け操作の実行

RichTextEditorCommandSource クラスのインスタンス化

以下のプロパティを設定します。

EventName

CommandType

メソッドを使用した貼り付け操作の実行

貼り付けメソッドの起動

コマンドを使用したコード例

XAML の場合:

<Button Content="Paste">
    <ig:Commanding.Command>
        <igPrim:RichTextEditorCommandSource EventName="Click" CommandType="Paste" />
    </ig:Commanding.Command>
</Button>

メソッドを使用したコード例

C# の場合:

this.xamRichTextEditor1.ActiveDocumentView.Selection.Paste();

Visual Basic の場合:

Me.xamRichTextEditor1.ActiveDocumentView.Selection.Paste()

ClipboardOperationExecuting イベント

概要

このイベントは、クリップボード操作を実行する前に発生します。イベント ハンドラーは、 ClipboardOperationCancelEventArgs 型の引数を提供します。引数は以下の目的に使用されます。

詳細

目的: 実行する処理:

クリップボード操作の取得

ClipboardOperation プロパティの値を取得します。

クリップボード操作を実行するデータ オブジェクトの取得

DataObject プロパティの値を取得します。

実行前にクリップボード操作のキャンセル

Cancel プロパティを True に設定します。

コード例

C# の場合:

void xamRichTextEditor1_ClipboardOperationExecuting(object sender, ClipboardOperationCancelEventArgs e)
{
    // クリップボード操作を取得
    ClipboardOperation operation = e.ClipboardOperation;
    // コンテンツをテキストとして取得
    string s = e.DataObject.GetData("Text") as string;
    // 条件が発生した場合にクリップボード操作をキャンセル
    e.Cancel = true;
}

Visual Basic の場合:

Private Sub xamRichTextEditor1_ClipboardOperationExecuting(sender As Object, e As ClipboardOperationCancelEventArgs)
      ' クリップボード操作を取得
      Dim operation As ClipboardOperation = e.ClipboardOperation
      ' コンテンツをテキストとして取得
      Dim s As String = TryCast(e.DataObject.GetData("Text"), String)
      ' 条件が発生した場合にクリップボード操作をキャンセル
      e.Cancel = True
End Sub

ClipboardOperationExecuted イベント

概要

このイベントは、クリップボード操作の実行後に発生します。イベント ハンドラーは、 ClipboardOperationEventArgs 型の引数を提供します。引数は以下の目的に使用されます。

詳細

目的: 実行する処理:

クリップボード操作の取得

ClipboardOperation プロパティの値を取得します。

クリップボード操作を実行したデータ オブジェクトの取得

DataObject プロパティの値を取得します。

コード例

C# の場合:

void xamRichTextEditor1_ClipboardOperationExecuted(object sender, ClipboardOperationEventArgs e)
{
    // クリップボード操作を取得
    ClipboardOperation operation = e.ClipboardOperation;
    // コンテンツをテキストとして取得
    string s = e.DataObject.GetData("Text") as string;
}

Visual Basic の場合:

Private Sub xamRichTextEditor1_ClipboardOperationExecuted(sender As Object, e As ClipboardOperationEventArgs)
      ' クリップボード操作を取得
      Dim operation As ClipboardOperation = e.ClipboardOperation
      ' コンテンツをテキストとして取得
      Dim s As String = TryCast(e.DataObject.GetData("Text"), String)
End Sub

関連コンテンツ

このトピックの追加情報については、以下のトピックも合わせてご参照ください。

トピック 目的

このトピックは、 xamRichTextEditor コントロールの複数選択機能をオンにする方法を説明します。

このトピックは、 xamRichTextEditor コントロールの選択機能を、開発者の観点から説明します。