That’s what the TextEditingTool is for.
Could you be more specific about what it doesn’t do that you want it to do?
i want to move the label.
If I recall correctly, the StateChart sample demonstrates having users move the labels on links.
I haven’t tried this, but you could implement a click event handler that added a TextBlock and then started the TextEditingTool on it.