我有几个项目的解决方案。在一个项目中,我的模型有一个名为ModelEnum的枚举。

然后在我的WPF项目中,我有一个带有字典的ViewModel。

在ViewModel中,我的ValuesDictionary设置为:

    private Dictionary<ModelEnum, string> _valuesDictionary = new Dictionary<ModelEnum, string>();

    public Dictionary<ModelEnum, string> ValuesDictionary
    {
        get { return _valuesDictionary; }
        set { _valuesDictionary = value; OnPropertyChanged(_valuesDictionary); }
    }


在我的XAML中,我有:

xmlns:model="clr-namespace:Model.Data;assembly=Model"
...
<TextBox Text="{Binding Path=ValuesDictionary[(model:ModelEnum)ModelEnum.Enum1].Value}" HorizontalAlignment="Left" Height="29" Margin="90,82,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="50"/>


以下XAML代码段:

(model:ModelEnum)ModelEnum.Enum1


给我错误“参数类型不匹配”。我很困惑,因为我认为我正在将其转换为它期望的Enum类型。我引用this这样的问题来尝试它没有运气。

最佳答案

更换

(model:ModelEnum)ModelEnum.Enum1].Value




(model:ModelEnum)Enum1]


然后尝试。我希望它能起作用。

10-08 14:07