Tho*_*mas 2 c# xaml visibility converter mvvm
自周年纪念更新(内部版本 14383 / 14393)以来,您应该能够在不使用转换器的情况下切换 XAML 元素的可见性,如下所示:
Run Code Online (Sandbox Code Playgroud)<TextBlock Text="I'm not visible!" Visibility="{x:Bind IsVisibleFalse}" /> <TextBlock Text="I'm visible!" Visibility="{x:Bind IsVisibleTrue}" />
我在我的项目中尝试了这个,最低目标版本设置为 Windows 10 周年纪念版。不幸的是我没有让它工作。
这段代码工作得很好:
<StackPanel Visibility="{x:Bind ViewModel.IsUnlocked,
Converter={StaticResource BoolToVisibilityConverter}, Mode=TwoWay}">
Run Code Online (Sandbox Code Playgroud)
这个没有(编译时没有错误,只是在 bool 值更改时不显示):
<StackPanel Visibility="{x:Bind ViewModel.IsUnlocked}>
Run Code Online (Sandbox Code Playgroud)
我怀疑 Mode="TwoWay" 是问题所在,因为您无法在“绑定表达式以强制转换结束时”设置它。此代码也不起作用:
<StackPanel Visibility="{x:Bind ViewModel.IsUnlocked,
Converter={StaticResource BoolToVisibilityConverter}>
Run Code Online (Sandbox Code Playgroud)
所以我的问题是:我是否遗漏了一些东西,或者这在 MVVM 场景中还没有工作,并且只有代码隐藏?
归档时间: |
|
查看次数: |
933 次 |
最近记录: |