マークアップと各要素のオフセット
開始要素と終了要素が含まれるためオフセットが発生します。
マークアップ | こ | ん | に | ち | は | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
オフセット | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
ソースコード
App.xaml
<Application x:Class="WpfApplication2.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" StartupUri="MainWindow.xaml"> </Application>
MainWindow.xaml
<Window x:Class="WpfApplication2.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="350" Width="800"> <RichTextBox Name="richTextBox" FontSize="24" /> </Window>
MainWindow.xaml.cs
using System.Windows; namespace WpfApplication2 { public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); this.richTextBox.SelectionChanged += (s, e) => { this.Title = this.richTextBox.Document.ContentStart.GetOffsetToPosition( this.richTextBox.CaretPosition).ToString(); }; } } }