Esconder um ContentControl
-
20-08-2019 - |
Pergunta
Abaixo está uma fina peça de arte que representa um formulário WPF com uma caixa de listagem no lado esquerdo e um controle de conteúdo à direita. Gostaria de defini-lo por isso, se a caixa de listagem está vazia, então o controle de conteúdo é invisível. Que propriedade / evento que eu deveria ligar para?
----- -----
| a | | c |
| b | | |
----- -----
Solução
Você deve criar um estilo para o do ContentControl, e usar um gatilho para determinar quando a Lista tem 0 itens, assim:
<ListBox x:Name="uiList">...</ListBox>
<ContentControl>
<ContentControl.Content>
<TextBox Text="List has items." />
</ContentControl.Content>
<ContentControl.Style>
<Style TargetType="{x:Type ContentControl}">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=uiList, Path=Items.Count}"
Value="0">
<Setter Property="Visibility"
Value="Collapsed" />
</DataTrigger>
</Style.Triggers>
</Style>
</ContentControl.Style>
</ContentControl>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow