绑定到已转换的“所选组合框”值

本文关键字:组合 所选组合框 转换 绑定 | 更新日期: 2023-09-27 17:55:48

我将枚举投影到组合框中。但是现在我想绑定到一个选定的项目,但不确定类型是什么。

XAML方面:

<ObjectDataProvider x:Key="MyEnumDataProvider" MethodName="GetValues" ObjectType="{x:Type System:Enum}">
    <ObjectDataProvider.MethodParameters>
        <x:Type TypeName="model:ContactMethod+Channels"></x:Type>
    </ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
<ComboBox  ItemsSource="{Binding Source={StaticResource MyEnumDataProvider}}" SelectedItem="ContactType" Width="100"></ComboBox>

联系方式.cs

public enum Channels { Phone, Website, Email, Skype, Cell, Fax }

MVVM 端:

这是我遇到麻烦的地方,我是否必须转换所选的"对象",或者是否有一种简单的解决方法。

public __ ContactType {get; set;}

下划线中有什么?

绑定到已转换的“所选组合框”值

选定项的类型为频道

public Channels ContactType {get; set;}

您将需要像这样绑定到 Xaml 中的属性

<ComboBox  ItemsSource="{Binding Source={StaticResource MyEnumDataProvider}}" SelectedItem="{Binding ContactType, Mode=TwoWay}" Width="100"></ComboBox>