是否可以根据另一个控件的可视状态设置Grid
或其他元素的可见性?我刚刚开始围绕VisualStateManager
概念(已经发现样式触发器无法在通用应用程序中使用),但如果可以这样做,或者无法解决这个问题。不。
在我的特定情况下,如果当前选择了ListView
中的特定项目/索引,我是否能够设置一个或多个元素的可见性?如果是这样,怎么样?
答案 0 :(得分:0)
我会在viewmodel的属性中维护ListView
选择,并将Grid.Visibility
绑定到该属性。您需要IValueConverter
将所选项目的数据类型转换为System.Windows.Visibility
,这是Grid.Visibility
绑定所必需的。
如果确定可见性的逻辑更复杂,例如需要应用程序状态,您可以向viewmodel添加属性bool IsImportantItemSelected
并将Grid.Visibility
绑定到此属性。此方法允许您将复杂逻辑保留在viewmodel中。您需要再次IValueConverter
才能从bool
转换为System.Windows.Visibility
。