Вы можете использовать Mouse.GetPosition(MyRichTextBox)
, который вернет вам координаты X, Y мыши внутри RichTextBox
Вот простой пример, который я использовал для проверки правильности:
<StackPanel>
<RichTextBox x:Name="Test" Height="100" Width="100" MouseMove="Test_MouseMove" />
<Label x:Name="Test2" Content="{Binding }" />
</StackPanel>
Код сзади:
private void Test_MouseMove(object sender, MouseEventArgs e)
{
this.Test2.DataContext = Mouse.GetPosition(this.Test);
}
EDIT
Не понял, что вы хотите получить позицию каретки вместо позиции мыши. Используйте myRichTextBox.CaretPosition.GetCharacterRect(LogicalDirection.Forward)
, чтобы получить координаты X, Y каретки