Nascondi un ContentControl
-
20-08-2019 - |
Domanda
Di seguito è riportata una bella opera d'arte che rappresenta un modulo WPF con una casella di riepilogo a sinistra e un controllo del contenuto a destra. Vorrei impostarlo in modo che se la casella di riepilogo è vuota, il controllo del contenuto è invisibile. A quale proprietà / evento devo agganciare?
----- -----
| a | | c |
| b | | |
----- -----
Soluzione
È necessario creare uno stile per ContentControl e utilizzare un trigger per determinare quando l'elenco contiene 0 elementi, in questo modo:
<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>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow