可见性绑定在初始启动时无效

时间:2013-07-29 16:40:08

标签: .net wpf xaml

我的项目中有2个下拉图库控件。第一个下拉菜单的选择是控制第二个下拉菜单中显示的内容。我有几个类别,其可见性由所选项目的枚举控制。

<RibbonGalleryCategory Header="Slice Attributes" Visibility="{Binding Path=MapModel.SelectedTypeKey, Mode=TwoWay, Converter={StaticResource EnumMatchToVisibilityConverter}, ConverterParameter={x:Static map1:TypeKey.Slice}}">

除初次启动外,此方法正常。如果我更改第一个下拉列表过滤器按预期过滤。它显示了初始星形图上的所有内容,并且似乎忽略了基于第一个下拉列表的可见性。我正在使用MVVM,所以如果我能帮助它,我宁愿不使用代码。

我有什么想法可以让过滤在初次启动时起作用?

1 个答案:

答案 0 :(得分:0)

您可以通过在加载ViewModel时模拟属性更改来执行此操作:

请注意,您还必须调用通常由下拉列表更改事件驱动的任何方法。

示例:

MapViewModel()
{
     // Do your loads first...        

     NotifyPropertyChange("SelectedTypeKey");
}