我有一个用户控件(NameField)。在它内部,我有一个包含3个网格的StackPanel:StandardView,FluidView,OtherView。在代码隐藏中,我有一个名为ViewFormView(Enum)类型的DependencyProperty。该枚举包含STANDARD,FLUID,OTHER。WPF触发器绑定:将枚举值绑定到可见性的最佳方式是什么?
我想我必须创建一个转换器,但我不确定这是否必要。我基本上想要使它唯一可见的网格是与枚举值相匹配的网格......也就是说,如果View = NameFieldView.STANDARD
那么名为StandardView的网格是可见的,而其他两个不是。
另外,我不确定这是否应该是Grid.Resources/Style或Grid.Triggers的一部分?
边注:小心使用“视图”作为属性名称。这意味着现在使用Model-View-ViewModel模式的一个非常具体的事情,它是WPF世界中首选的工作方式。 – 2010-09-15 17:54:51
我可以称之为“NameFieldVisualState”,我猜想和VisualState。但是,是的,我在那里提醒小心:) – 2010-09-15 17:55:58