2011-01-15 4 views
17

У меня есть список, в котором itemtemplate использует стиль. Стили задают границу с помощью datatrigger, устанавливая видимость границы для свертывания в зависимости от свойства. Это отлично работает, но я все еще вижу очень узкую строку для каждого элемента, в списке, который рухнул. Я надеялся, что кто-то может помочь в том, как установить видимость, чтобы не было видимых следов, поскольку это совершенно очевидно, когда последовательные элементы были свернуты.WPF - сокрытие элементов списка

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

Любая помощь приветствуется.

Ну это упрощенный шаблон:

<DataTemplate x:Key="myTemplate"> 
    <Border BorderThickness="0"> 
     <Border.Style> 
      <Style> 
       <Style.Triggers> 
        <DataTrigger Binding="{Binding Path=IsActive}" Value="False"> 
         <Setter Property="Border.Visibility" Value="Collapsed" /> 
        </DataTrigger> 
       </Style.Triggers> 
      </Style> 
     </Border.Style> 
     <DockPanel LastChildFill="True" HorizontalAlignment="Stretch"> 
      <StackPanel DockPanel.Dock="Right" HorizontalAlignment="Right" > 
       <TextBlock Text="{Binding Path=SeqNo, Converter={StaticResource SeqToTextConv}}"/> 
       <Label Content="..." /> 
      </StackPanel> 
     </DockPanel> 
    </Border> 
</DataTemplate> 
+0

Можете ли вы опубликовать пример XAML, который иллюстрирует проблему? – BrokenGlass

+0

добавив его в исходное сообщение – c95mbq

ответ

34

Вы успешно скрывая ваш деталь, однако, ListBox обертывания каждого из элементов в пределах ListBoxItem, это добавляет такие понятия, как выбор для вашего пункта. Я подозреваю, что вы все еще видите ListBoxItem в случае, когда ваши элементы скрыты. Вы можете использовать ItemContainerStyle, чтобы скрыть ListBoxItems ...

<ListBox> 
    <ListBox.ItemContainerStyle> 
    <Style TargetType="{x:Type ListBoxItem}"> 
     <Style.Triggers> 
     <DataTrigger Binding="{Binding IsActive}" Value="False"> 
      <Setter Property="Visibility" Value="Collapsed"/> 
     </DataTrigger> 
     </Style.Triggers> 
    </Style> 
    </ListBox.ItemContainerStyle> 
</ListBox> 
+0

Спасибо, Колин, очень ценим! – c95mbq

Смежные вопросы