特定字典元素作为CommandParameter

时间:2015-10-28 17:14:15

标签: c# .net wpf xaml

    <i:Interaction.Triggers>
        <i:EventTrigger EventName="Loaded">
            <i:InvokeCommandAction CommandParameter="{}" Command="{Binding ChangeViewModelCommand}"/>
        </i:EventTrigger>
    </i:Interaction.Triggers>

在ViewModel本身中,我定义了Dictionary<string, IViewModel>,其中包含对应用程序的每个ViewModel的引用。该属性为ApplicationViewModels。通过此命令,是否可以访问Dictionary的特定ApplicationViewModels条目?

目标是将已经实例化的实例传递给命令。

1 个答案:

答案 0 :(得分:1)

是的,你可以这样做很简单:

<i:Interaction.Triggers>
    <i:EventTrigger EventName="Loaded">
        <i:InvokeCommandAction CommandParameter="{Binding ApplicationViewModels[DictKey]}" Command="{Binding ChangeViewModelCommand}"/>
    </i:EventTrigger>
</i:Interaction.Triggers>

其中DictKey是您尝试传递的视图模型的关键。