Как избежать изменения переменной списка просмотра при изменении значения в Visual Studio?

Я хотел бы избежать того, чтобы окно просмотра сворачивало содержимое списка переменных списка при изменении значения в процессе моего приложения в режиме отладки. Я не знаю, действительно ли я прав, см. Рисунки ниже:

Рухнул:

введите описание изображения здесь

Expended:

введите описание изображения здесь

Я хотел бы видеть содержимое моего списка и расширять содержимое моего списка, даже если строка моего списка изменится. Есть ли способ заблокировать окно просмотра?

Ответ 1

Как упоминалось в @JasonH, список останется расширенным, а переменные ссылаются на тот же объект, и на экране будет отображаться модифицированный элемент красного цвета. Список будет сбрасываться при назначении новой ссылки на переменную. Я не знаю какой-либо возможности изменить это поведение.

В качестве альтернативы вы можете прикреплять элементы в интересующем вас списке. Или вы можете связывать все элементы. В этом случае вы получите список расширенного события, если ссылки будут изменены. Но он будет доступен только на этой конкретной вкладке. Вот пример и изображение каждого шага:

var ints = new [] {"1", "2", "3", "4"};
ints[1] = "3";
ints = new[] { "1" };

Шаг 1 Шаг 2 Шаг 3

Ответ 2

Короткий ответ на "фиксацию открывания часов" - нет, вы не можете.

Во-первых, эта опция просто недоступна в VS, но вы можете предложить ее Visual Studio User Voice, если вы чувствуете, что это поможет вы и другие.

Во-вторых, и это немного усложняется, но следуйте за мной... Если элемент часов выходит за рамки, он рухнет. Если элемент просмотра повторно инициализирован (что в какой-то мере выводит его из области на мгновение), он также рухнет. Если у вас есть элемент наблюдения (сложный объект), и вы начинаете изменять его свойства и/или поля, вы увидите, что они (свойства и поля) будут меняться, но элемент (объект) наблюдения не разрушается.

Надеюсь, это поможет.