关于在MVVM架构下WPF中UserControl的 visibility Binding问题。

我在ViewModel中用一个枚举来定义页面状态,根据状态控制界面中的UserControl的显隐:
ViewModel:


类似的还有其他三个属性ChatEnabled、UserInfoEnabled、GroupMebEnabled,我通过控制MainState来控制界面UserControl的显隐:

之前我也是这样做的,不过控制的是普通界面元素的显隐(如Button,Textbook等),但是我发现同样的方法用在UserControl上就不管用了(结果是全部显示)。我在DeBug下看过XAML中的变量:

1、为什么这种方法用在UserControl中不行?
2、是否是因为我用错了?
3、有没有其他的更好的办法

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^