Why can’t MS make a decent text editor?

In Emacs if I hold down the up or down arrow keys to go from line to line the editor remembers the column number that I was on when I started and tries to put the cursor on that column in the next or previous line.  It remembers this column number even if the line I move to doesn’t have that many columns so that when I move the cursor again if the next line does have that many then that is where the cursor will go.

In Visual Studio (all versions as far as I know) the column number is always reset to the minimum of the starting column number and the length of the line.

This makes it a right royal pain in the rear to edit several related lines that are separated by shorter ones and almost forces you to use the mouse for what should be a simple keyboard operation.

Is there a setting that controls this brain-dead behaviour?