<Button Content="Cut">
<ig:Commanding.Command>
<igPrim:RichTextEditorCommandSource EventName="Click" CommandType="Cut" />
</ig:Commanding.Command>
</Button>
このトピックは、 xamRichTextEditor ™ コントロールのクリップボードの操作について、開発者の観点から説明します。
このトピックをより理解するために、以下のトピックを参照することをお勧めします。
このトピックは、以下のセクションで構成されます。
xamRichTextEditor コントロールでは、クリップボード操作による切り取り、コピー、貼り付けができます。コンテンツの一部を異なる場所に移動またはコピーすると、ドキュメントのリッチ コンテンツを編集できるようになります。また、他のアプリケーションからのリッチ テキスト コンテンツの貼り付けおよび他のアプリケーションへの貼り付けもできます。
切り取りおよびコピー操作を利用するには、 xamRichTextEditor でコンテンツを選択する必要があります。貼り付け操作では、コンテンツの選択が不要な場合もあります。
ドキュメントに選択したコンテンツがない場合、クリップボードのコンテンツが現在のカレット位置の後ろに挿入されます。
ドキュメントに選択したコンテンツがある場合、クリップボードのコンテンツが現在選択されたコンテンツと置換されます。
クリップボードによる切り取りでは、選択したコンテンツをドキュメントからクリップボードに移動します。コンテンツはドキュメントから削除されます。
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()
クリップボードによるコピーでは、選択したコンテンツをドキュメントからクリップボードにコピーします。
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 コントロールの現在のカレット位置にクリップボードのコンテンツを挿入する、またはドキュメントで選択したコンテンツと置換します。
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()
このイベントは、クリップボード操作を実行する前に発生します。イベント ハンドラーは、 ClipboardOperationCancelEventArgs 型の引数を提供します。引数は以下の目的に使用されます。
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
このイベントは、クリップボード操作の実行後に発生します。イベント ハンドラーは、 ClipboardOperationEventArgs 型の引数を提供します。引数は以下の目的に使用されます。
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
このトピックの追加情報については、以下のトピックも合わせてご参照ください。