在下面提供的 XAML 中,有时我没有 Phone 的值。当发生这种情况时,该值会丢失,但是 TextBlock 仍然占用面板中的空间。我想隐藏空的 TextBlock,使其不在 StackPanel 中占用空间。
<StackPanel>
<TextBlock Text="{Binding Path=FirstName}" />
<TextBlock Text="{Binding Path=LastName}" />
<TextBlock Text="{Binding Path=Phone}" />
<TextBlock Text="{Binding Path=Email}" />
</StackPanel>
我已经阅读了这篇文章,但是被接受的回答对我不起作用:
<StackPanel>
<TextBlock Text="{Binding Path=FirstName}" />
<TextBlock Text="{Binding Path=LastName}" />
<TextBlock Text="{Binding Path=Phone}">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Style.Triggers>
<Trigger Property="Text" Value="{x:Null}">
<Setter Property="Visibility" Value="Collapsed" />
</Trigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
<TextBlock Text="{Binding Path=Email}" />
</StackPanel>
我是否哪里犯了错误,或者被接受的答案是错的?为达成目标应该怎么做?