Могу ли я отделить область дизайна от панели XAML в Visual Studio?

83

Можно ли отделить разрабатываемое мной окно WPF от его кода XAML? Двойной щелчок по любому файлу XAML откроет его и покажет как код XAML, так и окно WPF в одном окне, разделив их по горизонтали или вертикали, но по-прежнему оба находятся в одном окне. У меня 4 монитора, и код XAML, который я пишу, состоит из длинных строк, поэтому я хотел бы отредактировать код XAML только на одном мониторе и просмотреть окно WPF на другом, но разделение их на два разных окна не кажется возможно.

Пара паршивых обходных путей, которые я могу сделать, но мне не нравятся:

  1. Отключите весь редактор XAML с помощью конструктора, затем измените размер этого окна на двух мониторах, чтобы код XAML находился на одном мониторе, а окно WPF - на другом.
  2. Используйте «Открыть с помощью ...», чтобы открыть второй редактор того же документа XAML, но тогда выделение кода и выделение окна WPF не синхронизируются.

Так можно ли их разделить? Или, может быть, у вас есть способ лучше, чем у меня?

Обычный кодер
источник
2
Этот пост в блоге msdn (совет 10), кажется, предполагает, что два обходных пути, о которых вы уже знаете, являются официальным решением. blogs.msdn.com/b/wpfsldesigner/archive/2010/06/30/…
Крис Петерам
14
Печально, что спустя 4 года они так и не реализовали эту функцию. Установки с несколькими мониторами широко используются уже не менее 10 лет.
Plain Coder
2
6 лет назад, интересно, что-то изменилось
Атейк
1
@PlainCoder Больше похоже на 20 лет.
Джон Сток
1
2019 вот и мы, и это все еще не реализовано: D
Zeta

Ответы:

79

У меня была такая же проблема, потом я нашел способ разделить ее вот так:

  • Щелкните правой кнопкой мыши файл XAML в проводнике решений и выберите « Открыть с помощью» ;
  • выберите редактор исходного кода (текст) (вместо редактора XML (текст) ).

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

путту
источник
6
Вы читали мой второй обходной путь выше? Это именно то, что вы предлагаете.
Plain Coder
1
@PlainCoder, просто хочу подтвердить, что в VS2015 это отлично работает и, как ожидалось, с подсветкой синтаксиса (даже с подсветкой ReSharper 10) и полностью синхронизировано. Похоже, теперь безопасно принять этот ответ.
Sevenate
Я могу подтвердить, что это также работает в VS2013, как описывает @Sevenate.
Kidiskidvogingogin
1
@Sevenate Моя Visual Studio 2015 не работает должным образом и не синхронизирует подсветку синтаксиса.
Steve.NayLinAung
3
он синхронизируется в том смысле, что вы вносите изменения, а другое окно обновляется - но, к сожалению, вы не можете щелкнуть элемент, чтобы увидеть соответствующий элемент или код в другом окне :-(
Simon_Weaver
12

Щелкните кнопку с двойной стрелкой справа от кода XML.

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

Чтобы восстановить исходную конфигурацию, щелкните двойную стрелку >> снова .

Эти параметры выделены ниже:

Параметры переключения XAML / Design

Вивек Кумар
источник
3

В Visual Studio 2017 есть новый режим «Изменить и продолжить» для XAML, который действительно потрясающий и для меня устранил необходимость в этой функции «разделения».

https://blogs.msdn.microsoft.com/visualstudio/2016/04/06/ui-development-made-easier-with-xaml-edit-continue/

Вы можете буквально ввести XAML и мгновенно обновить работающее приложение - так что поместите его на любой экран, который хотите.

Мое редактирование Visual Studio для XAML стало супер-супер-медленным, а обновления теперь происходят мгновенно и происходят внутри самого запущенного приложения, что значительно ускорит разработку.

Simon_Weaver
источник
Не совсем полное решение, поскольку людям нужно щелкнуть представление пользовательского интерфейса и перейти к XAML.
j
Также изменить и продолжить, поскольку XAML не может обрабатывать все изменения. Например, включение словаря в MergedDictionary или добавление шаблонов данных не всегда работает.
Майк де Клерк
Также вы не можете увеличивать масштаб
Ateik 05
0

Используйте всплывающий параметр XAML рядом с панелями «Дизайн и XAML», при котором редактор XAML открывается в новое окно, которое можно переместить на другой экран. Подсветка элементов не будет работать, но изменения будут отражены на лету.

Шивендра Бишт
источник
-2

Если у вас два экрана, разделите окно дизайнера по вертикали, отсоедините окно от Visual Studio, затем измените размер окна так, чтобы его ширина охватывала два экрана.

disklosr
источник
Это как раз его первый вариант
Атейк