I have a TextBlock that presents a text. When the user clicks on the text, it is dynamically replaced with a TextBox (which is binded to the same data), effectively switching into "edit mode". This also significantly improves the performance.
The only caveat is that I am not able to know which part of the text the user clicked on. Therefore, the cursor always appears at the first position on the TextBox. Ideally, the cursor should appear in the same text position that the user clicked on.