【发布时间】:2020-02-05 07:37:52
【问题描述】:
我有一个 ListView 包含 Music(我的 ViewModel)列表,Music 有一个 string 属性 Album。
但是,当Album 为空时,意味着它只是"",保存Album 的容器(HyperTextButton)不会显示空值。相反,它显示Music.ToString() 的值。并且虽然显示的是Music字符串,但HyperTextButton的内容实际上是空的,这可以在HyperTextButton的点击事件中确认。
如何让它正确显示空字符串?
这是ListView中的ItemTemplate:
<local:PlaylistControlItem DataContext="{x:Bind}" ShowAlbumText="{Binding ElementName=PlaylistController, Path=ShowAlbumText}">
<local:PlaylistControlItem.ContextFlyout>
<MenuFlyout Opening="OpenMusicMenuFlyout" />
</local:PlaylistControlItem.ContextFlyout>
</local:PlaylistControlItem>
这是显示Album的Control:
<HyperlinkButton
x:Name="AlbumTextButton"
Grid.Row="0"
Grid.Column="2"
Margin="0,0,10,0"
VerticalAlignment="Center"
Click="Album_Click"
Content="{Binding Album}"
Foreground="{Binding IsPlaying, Converter={StaticResource PlaylistRowColorConverter}, ConverterParameter=Gray, Mode=OneWay}"
Style="{StaticResource TextButtonStyle}"
Visibility="{x:Bind ShowAlbumText, Converter={StaticResource VisibilityConverter}, Mode=OneWay}" />
ListView的源代码是here。
ItemTemplate 是here。
【问题讨论】:
标签: c# xaml uwp win-universal-app