2013-07-29 3 views
0

Когда сталкиваются с проблемой notorious новой строки после переключения из C# в VB.NET,VB.NET Undo ведет себя неожиданно

Вы неизбежно пытаться исправить свою ошибку с быстрой отменой (Ctrl + Z). Однако он не отменяет новую строку, а просто удаляет пробел, предшествующий вашему курсору. Это заставляет вас отменить дважды, чтобы получить эффект, на который вы надеялись.

Вот видео, которое показывает, что я имею в виду: http://youtu.be/K2IPrLB4gWA

Почему Undo ведут себя так, как это делает?

+2

Возможно, это имеет какое-то отношение к тому, как окна делают новую строку (возврат строки и возврат каретки), проверьте это [ссылка] (http://stackoverflow.com/questions/7013034/does-windows-carriage-return-rn-consist-of-two-characters-or-one-character) –

+1

Я был потрясен, когда я пошел в свою собственную копию визуального студию, чтобы обнаружить, что она делает то же самое. Я никогда не замечал этого раньше. –

ответ

2

Что вы видите, это эффект от VB.Net Pretty Printing. При определенных событиях, таких как Введите IDE попытается отформатировать ваш код. Это будет сделано как отдельное действие отмены. Следовательно, следующая отмена отменяет красивую печать, а не тот код, который вы набрали. В этом конкретном случае добавляется набор пространств для довольно печати, и, следовательно, вы отменяете это действие.

+0

Я боюсь, что это не сработало для меня, когда я выключил красивую печать: http://stackoverflow.com/questions/17934038/is-there-any-way-to-turn-off-pretty-printing-in-the- vs2010-ide? lq = 1 – jth41

+0

@ jth41 возможно, что поведение отступа не является частью красивой логики печати и является стандартной стандартной логикой отступа, которая не может быть отключена. Я должен буду изучить это – JaredPar

Смежные вопросы