可编辑的TextBlock,插入索引查询

时间:2013-10-01 13:19:07

标签: c# wpf wpf-controls custom-controls

我正在为我的应用程序开发自定义可编辑文本块。因此,当用户单击Control时,TextBox会交换用户以编辑文本。到目前为止,一切都很好,现在我的要求是我希望TextBox的插入符索引正好在用户点击TextBlock的位置。

因此用户不会感觉到UI视角的交换。

哪种方法更合适?考虑到上述因素?!

我对这件事的想法很失落。

1 个答案:

答案 0 :(得分:1)

我假设您有一个UserControl / Customcontrol,它有自己的鼠标处理支持,以及一种告诉何时将内容从TextBlock切换到TextBox的方法。

在mousedown事件中,您可以存储单击的位置,交换到文本框,在Loaded事件中,您可以使用GetCharacterIndexFromPoint来确定点击的位置,并将CaretIndex设置为位置。如果您使用任何一个,可能需要调整边距。