Подтвердить что ты не робот

Как вручную перезагрузить конструктор Visual Studio для WPF

Можно ли заставить WPF-конструктор перезагружать или обновлять, не перестраивая весь проект или решение?

Если есть ошибка, я получаю опцию в представлении конструктора, чтобы обновить конструктор. Но если у меня нет ошибки, как я могу заставить конструктор обновиться после внесения изменений?

4b9b3361

Ответ 1

Я немного опаздываю, но это лучшее решение 1 которое я нашел до сих пор: всякий раз, когда дизайнер делает глупые вещи, я просто убиваю его.

Нажмите Ctrl + Shift + Esc
Перейдите на вкладку "Процессы".
Убить XDesProc.exe

Это также устраняет проблемы для окна свойств (например, когда он застрял, и вы не можете вводить в него материал).

1 Это решение для дизайнерских проблем. Ваши проблемы также могут быть вызваны проблемами компиляции, и в этом случае просто щелкните правой кнопкой мыши по решению в проводнике решений и очистите его. Причина этого заключается в том, что иногда компиляция теряет синхронность с созданными файлами из XAML, и очистка решения просто удаляет эти промежуточные файлы; это как reset, поэтому ваша компиляция может начинаться с чистого листа.


Чтобы сделать это быстро:

Удобно это обычно последнее, если отсортировано в алфавитном порядке.
Когда это так, мне почти как ритуал, чтобы быстро открыть диспетчер задач, щелкните любой процесс, нажмите End, Delete, Enter (сделано), Esc (выйдите из диспетчера задач). Вместо перезапуска VS и ожидания всех нагрузок и выгрузок вы можете сделать это через 1-2 секунды.

Ответ 2

Вы можете добавить это в меню Tools в Visual Studio.

После настройки используйте Tools..XAML Designer Restart:

Alt + T, затем L

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

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

Я попытался настроить его для Alt + T, затем X, но это столкнулось с Tools..Choose ToolboX Items.

Update

В эти дни я предпочитаю просто нажать Ctrl + Shift + Esc, чтобы открыть диспетчер процессов, затем X, чтобы перейти к XDesProc.exe, затем Delete, чтобы убить процесс изгоев (es).

Ответ 3

В новых версиях Visual Studio в нижней части конструктора есть значок "Отключить код проекта". Если вы отключите это и включите его, он перезагрузит конструктора.

Ответ 4

Дизайнер Visual Studio пытается сохранить визуализированное представление синхронно с XAML. Это рекламное поведение.

  • Первое, что вы должны проверить, это отсутствие ошибок в окне ошибок. Это может быть что-то простое, как недостающая угловая скобка.
  • Во-вторых, проверить, есть ли у вас какой-либо код (кроме кода), который нужно скомпилировать для дизайнера, чтобы правильно отобразить ваш XAML. Сюда входят любые ваши собственные типы данных, которые вы создаете в XAML, любые пользовательские элементы управления, которые вы написали (например, MyTextBlock, полученные из TextBlock), или любые классы, прямо или косвенно поддерживающие данные времени разработки. Если это так, вам нужно перестроить свой проект.
  • Последнее, что нужно проверить, - это возможные ошибки в дизайнере. Несмотря на рекламируемое поведение, дизайнер может выйти из-за синхронизации из-за ошибок. В этом случае закройте окно XAML и снова откройте его. Другие трюки, которые могут работать, - это выбрать вкладку XAML, а затем вкладку "Дизайн" или максимизировать область XAML.

Что касается перестройки вашего приложения, вам не нужно делать это как привычку. Вам нужно только перекомпилировать его, когда применяются вышеуказанные условия. Как только они не применяются, вы можете просто изменить XAML. Другой способ сказать это, что если вы не модифицировали код, вам не нужно перестраивать (по модулю ошибки).

Ответ 5

Я не уверен, но я думаю, что сборка обновит ваше представление в этой ситуации.

Ответ 6

По крайней мере теоретически дизайн Design всегда синхронизируется с XAML, поэтому нет необходимости постоянно обновлять его. Могу ли я спросить, при каких обстоятельствах вы хотите перезагрузить его?

Ответ 7

В этом XAML файле есть какое-либо событие, и в большинстве случаев он не отображает предварительный просмотр дизайна из Visual Studio. Если вы хотите увидеть дизайн из Visual Studio, попробуйте с помощью Command Binding вместо события, вы увидите предварительный просмотр.

Ответ 8

Я не уверен, как это работает при редактировании WPF, но с страницами ASP.NET, когда просмотр дизайна не обновляется, я могу сделать 2 вещи

  • Выйти из Visual Studio и перезапустить
  • Перейдите в исходное представление (не разбитое), введите что-нибудь и удалите его (не отменив, просто удалите или откройте) и сохраните его. Затем вернитесь к представлению дизайна, как правило, представление было обновлено.

Ответ 9

Когда вы добавляете новую строку кода или новый объект, конструктор XAML синхронизируется, но я сталкивался с несинхронным поведением при изменении свойства объекта.

Сложным способом является то, что при изменении свойства вам нужно только удалить символ " > " из конца инструкции, а затем повторить его.