Как легко изменить раскладку экрана с книжной на альбомную и наоборот в WPF

Предположим, у нас есть разработанный макет некоторого приложения WPF для использования на стандартном экране Full HD 1920x1080. Затем нам нужно повернуть экран и установить его в коробку, установленную на ПК-киоске, но в книжной ориентации.

Мне нужно найти способ, как легко или, по крайней мере, повернуть экран более элегантно.

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

Элементы управления остаются той же ширины и высоты.

Есть ли способ сделать это автоматически, или я должен взять каждый элемент управления и изменить его свойства один за другим?

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

КСТАТИ. Поворот всего окна не допускается. Выдает исключение.


person Patrik    schedule 22.08.2013    source источник
comment
Видеодрайверы не позволяют все повернуть?   -  person paparazzo    schedule 22.08.2013
comment
Я делаю это для клиента, и у нас нет возможности сделать это через драйверы. Но, возможно, если мы найдем подходящие драйверы, это будет последний вариант. Сейчас я ищу, в чем разница между LayoutTransform и RenderTransform, и, возможно, это может мне помочь. На данный момент не уверен.   -  person Patrik    schedule 22.08.2013
comment
Значит, в киоске все остальное будет боком?   -  person paparazzo    schedule 22.08.2013
comment
если вы нашли решение своей проблемы, опубликуйте ответ на этот вопрос вместо того, чтобы редактировать вопрос с этим.   -  person Federico Berasategui    schedule 22.08.2013


Ответы (1)


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

Платформа WPF выполняет свою работу в этом порядке

LayoutTransform Измерение Упорядочить RenderTransform Render

Лучше всего это описано здесь LAYOUTTRANSFORM VS . РЕНДЕРТРАНСФОРМ - В ЧЕМ РАЗНИЦА?

person Patrik    schedule 22.08.2013