2016-06-13 2 views
1

У меня есть ComerBox Telerik, к которому применяется GroupStyle. Я хочу иметь его так, чтобы, когда элементы были отфильтрованы, элементы группы исчезают, если у них нет дочерних элементов, и они продолжают вверх по иерархии.Фильтрация ComboBox с помощью GroupStyle

Итак, это начальная настройка:

enter image description here

ток:

enter image description here

Желаемая:

enter image description here

Для справки:

GroupItem Стиль

<Style TargetType="{x:Type GroupItem}"> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate> 
       <Expander Header="{Binding Path=Name}"> 
        <ItemsPresenter Margin="20,0,0,0" /> 
       </Expander> 
      </ControlTemplate> 
     </Setter.Value> 
    </Setter> 
    <Style.Triggers> 
     <DataTrigger 
      Binding="{Binding Path=Name}" 
      Value="{x:Null}"> 
      <Setter Property="Template"> 
       <Setter.Value> 
        <ControlTemplate> 
         <ItemsPresenter /> 
        </ControlTemplate> 
       </Setter.Value> 
      </Setter> 
     </DataTrigger> 
    </Style.Triggers> 
</Style> 

RadComboBox

<telerik:RadComboBox 
    Grid.Column="1" 
    DisplayMemberPath="Name" 
    IsEditable="True" 
    IsFilteringEnabled="True" 
    ItemsSource="{Binding Path=Analyzers}" 
    KeyboardNavigation.TabNavigation="Local" 
    OpenDropDownOnFocus="True" 
    SelectedItem="{Binding Path=Analyzer, Mode=OneWayToSource}" 
    SelectedValue="{Binding Path=AnalyzerId, Converter={utilities:NullToZeroValueConverter}}" 
    SelectedValuePath="Id" 
    Style="{StaticResource ResourceKey=RadComboBoxStyle.CanDisable}" 
    TabIndex="2"> 
    <telerik:RadComboBox.ItemContainerStyle> 
     <Style 
      BasedOn="{StaticResource ResourceKey=RadComboBoxItemStyle}" 
      TargetType="telerik:RadComboBoxItem"> 
      <Setter Property="ToolTip" Value="{Binding Path=Description}" /> 
     </Style> 
    </telerik:RadComboBox.ItemContainerStyle> 
    <telerik:RadComboBox.GroupStyle> 
     <GroupStyle /> 
    </telerik:RadComboBox.GroupStyle> 
</telerik:RadComboBox>  

ответ

0

я нашел следующее (связанной) пример на форумах Telerik. Example

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