【发布时间】:2011-07-31 05:45:14
【问题描述】:
在下面提供的 XAML 中,有时我没有 Phone 的值。发生这种情况时,该值会丢失,但TextBlock 仍会占用面板中的空间。我想隐藏空的TextBlocks,以免占用StackPanel 中的空间。
这是 XAML:
<StackPanel>
<TextBlock Text="{Binding Path=FirstName}" />
<TextBlock Text="{Binding Path=LastName}" />
<TextBlock Text="{Binding Path=Phone}" />
<TextBlock Text="{Binding Path=Email}" />
</StackPanel>
我已阅读 this article,但接受的答案对我不起作用:
<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>
我是在某处犯了错误,还是接受的答案有误?我应该怎么做才能实现我的目标?
【问题讨论】:
-
手机属性在创建或删除时是String.Empty还是Null?
-
它是空的。问题解决了:)
标签: wpf