方法: プログラムでテキストに要素を挿入する
次の例では、TextPointer オブジェクトを 2 つ使用し、Span 要素の適用対象とする範囲をテキスト内で指定する方法を示します。
例
using System;
using System.Windows;
using System.Windows.Media;
using System.Windows.Controls;
using System.Windows.Documents;
namespace SDKSample
{
public partial class InsertInlineIntoTextExample : Page
{
public InsertInlineIntoTextExample()
{
// Create a paragraph with a short sentence
Paragraph myParagraph = new Paragraph(new Run("Neptune has 72 times Earth's volume..."));
// Create two TextPointers that will specify the text range the Span will cover
TextPointer myTextPointer1 = myParagraph.ContentStart.GetPositionAtOffset(10);
TextPointer myTextPointer2 = myParagraph.ContentEnd.GetPositionAtOffset(-5);
// Create a Span that covers the range between the two TextPointers.
Span mySpan = new Span(myTextPointer1, myTextPointer2);
mySpan.Background = Brushes.Red;
// Create a FlowDocument with the paragraph as its initial content.
FlowDocument myFlowDocument = new FlowDocument(myParagraph);
this.Content = myFlowDocument;
}
}
}
Imports System.Windows
Imports System.Windows.Media
Imports System.Windows.Controls
Imports System.Windows.Documents
Namespace SDKSample
Partial Public Class InsertInlineIntoTextExample
Inherits Page
Public Sub New()
' Create a paragraph with a short sentence
Dim myParagraph As New Paragraph(New Run("Neptune has 72 times Earth's volume..."))
' Create two TextPointers that will specify the text range the Span will cover
Dim myTextPointer1 As TextPointer = myParagraph.ContentStart.GetPositionAtOffset(10)
Dim myTextPointer2 As TextPointer = myParagraph.ContentEnd.GetPositionAtOffset(-5)
' Create a Span that covers the range between the two TextPointers.
Dim mySpan As New Span(myTextPointer1, myTextPointer2)
mySpan.Background = Brushes.Red
' Create a FlowDocument with the paragraph as its initial content.
Dim myFlowDocument As New FlowDocument(myParagraph)
Me.Content = myFlowDocument
End Sub
End Class
End Namespace
次の図は、この例の結果を示したものです。
関連項目
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET Desktop feedback