Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / WPF, Silverlight Новый топик    Ответить
 перенос дочерних элементов в xaml  [new]
alfah_guitar
Member

Откуда:
Сообщений: 4
Добрый день, прошу помочь со следующей проблемой.
работаю в MVVM проекте

в представлениях xaml есть элемент wrappanel или stackpanel, в которые вкладываются иные элементы по типу текстбоксов

сколько будет этих элементов неизвестно заранее, то же касается их типов.

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

нужно добиться одинаковой их высоты и переноса на вторую и следующие строки при необходимости.

попытался объяснить на рисунке во вложениях.

Заранее благодарен!

К сообщению приложен файл. Размер - 31Kb
5 ноя 15, 16:15    [18374550]     Ответить | Цитировать Сообщить модератору
 Re: перенос дочерних элементов в xaml  [new]
alfah_guitar
Member

Откуда:
Сообщений: 4
прошу прощения за большой рисунок
5 ноя 15, 16:24    [18374613]     Ответить | Цитировать Сообщить модератору
 Re: перенос дочерних элементов в xaml  [new]
Shocker.Pro
Member

Откуда: ->|<- :адуктО
Сообщений: 21978
Почитайте про Grid.IsSharedSizeScope
с помощью него можно делать одинаковые размеры (по самому большому размеру среди всех элементов)

Ну а перенос обеспечит WrapPanel
5 ноя 15, 16:30    [18374649]     Ответить | Цитировать Сообщить модератору
 Re: перенос дочерних элементов в xaml  [new]
alfah_guitar
Member

Откуда:
Сообщений: 4
Shocker.Pro, благодарю, но сейчас это выглядит так
блоки одинаковой высоты, но просто сталкивают друг друга.

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

К сообщению приложен файл. Размер - 6Kb
6 ноя 15, 16:59    [18379884]     Ответить | Цитировать Сообщить модератору
 Re: перенос дочерних элементов в xaml  [new]
Shocker.Pro
Member

Откуда: ->|<- :адуктО
Сообщений: 21978
Тогда вам нужен потоковый документ. Это что-то типа html с абзацами span-ами и т.п., но гораздо более мощный.
6 ноя 15, 17:04    [18379925]     Ответить | Цитировать Сообщить модератору
 Re: перенос дочерних элементов в xaml  [new]
Roman Mejtes
Member

Откуда: г. Пермь
Сообщений: 4036
думаю автору надо это:

    <Grid Width="300" Height="200" Background="LightBlue">
        <TextBlock TextWrapping="Wrap">
            <TextBlock.Inlines>
                <Run FontWeight="Bold" Text="В первом издании"/>
                <Run  Text="«Войны и мира» был длинный ряд чисто теоретических страниц, мешавших цельности художественного впечатления; в позднейших изданиях эти рассуждения были выделены и составили особую часть. Тем не менее, в «Войне и мире» Толстой-мыслитель отразился далеко не весь и не самыми характерными своими сторонами. Нет здесь того, что проходит красною нитью через все произведения Толстого, как писанные до «Войны и мира», так и позднейшие"></Run>
                <Run FontStyle="Italic" Text=" — нет глубоко пессимистического настроения."></Run>
            </TextBlock.Inlines>
        </TextBlock>
    </Grid>

P.S. Свойство зависимости Text у элемента Run по умолчанию TwoWay, по этому если у связываемого свойства нет Setter, будет ошибка. Тогда в Binding надо указать Mode=OneWay, или Mode=OneTime в зависимости от того, что требуется :)
6 ноя 15, 18:45    [18380477]     Ответить | Цитировать Сообщить модератору
Все форумы / WPF, Silverlight Ответить