如何从Prism ViewModel更改元素的VisualState? 我可以使用可绑定属性吗?
谢谢!
答案 0 :(得分:0)
要更改元素的视觉状态,可以从页面的代码隐藏中进行操作,如下所示:
VisualStateManager.GoToState(yourViewElement, yourViewElementState);
但是,这不是最好的建议,但是您可以从背后的代码中订阅视图模型中的更改,然后调用VisualStateManager。
示例
YourPage()
{
viewModel.PropertyChanged += FooChanged;
}
public void FooChanged()
{
if (!args.PropertyName.Equals("YourProperty"))
{
VisualStateManager.GoToState(yourViewElement, yourViewElementState);
}
return;
}
答案 1 :(得分:0)
在本文中找到了解决方案,并在XAML页面上添加了一个Behavior: https://forums.xamarin.com/discussion/127531/behavior-bindableproperty-not-update