Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: ItemsControl + ItemsSource  (Прочитано 6689 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
Sky Dragon
Интересующийся

ru
Offline Offline

« : 08-02-2012 09:18 » 

Здравствуйте! Возникла проблема. Имеется ItemsControl. На него кидается список. Шаблон списка элементов должен быть сеточкой.
Все бы нормально, но потребовалось ввести триггер и в зависимости от него не показывать некоторые элементы. Элемент становится Collapsed, но при этом ячейка в сетке, в которой стоит спрятанный элемент, не заполняется следующим элементом.
Это все логично, но как это исправить? Чтобы сетка заполнялась по типа StackPanel или WrapPanel (когда скрытый элемент реально не занимает место).

краткий код ниже
(соответсвенно класс Room имеет свойства Title и bool IsValid)
Код: (XML)
           
         <ItemsControl ItemsSource="{Binding Path=RoomCollection}">
                        <ItemsControl.ItemsPanel>
                            <ItemsPanelTemplate>
                                <UniformGrid Columns="5" Rows="3"/>
                            </ItemsPanelTemplate>
                        </ItemsControl.ItemsPanel>
                        <ItemsControl.ItemTemplate>
                            <DataTemplate>
                                <Grid>
                                    <Grid.Style>
                                        <Style TargetType="{x:Type Grid}">
                                            <Style.Triggers>
                                                <DataTrigger Binding="{Binding Path=IsValid}" Value="False">
                                                    <Setter Property="Visibility" Value="Collapsed"/>
                                                </DataTrigger>
                                            </Style.Triggers>
                                        </Style>
                                    </Grid.Style>
                                    <TextBlock Text="{Binding Path=Title}"/>
                                </Grid>
                            </DataTemplate>
                        </ItemsControl.ItemTemplate>
                    </ItemsControl>
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines