I think this is your issue
for example:
123 | a <- invalid character, my function in the _TextChanged event remove it and the position go to:
| 123
I want:
123 |
The following code will help you to solve your problem
int textLength = yourTextBox.Text.Length;
yourTextBox.SelectionStart = textLength;
yourTextBox.SelectionLength = 0;