无法将组合框绑定到数组

时间:2013-10-15 12:13:29

标签: wpf binding combobox

我似乎无法将ComboBox绑定到数组。

我有ObjectDataProvider

<ObjectDataProvider x:Key="TypeFromEnum" MethodName="GetValues" ObjectType="{x:Type system:Enum}">
    <ObjectDataProvider.MethodParameters>
        <x:Type TypeName="property:Property:PropertyType"/>
    </ObjectDataProvider.MethodParameters>
</ObjectDataProvider>

这个绑定:

<DataTemplate x:Key="TypeCellTemplate">
    <ComboBox ItemsSource="{Binding Path={StaticResource TypeFromEnum}}" SelectedItem="{Binding Path=Type}"/>
</DataTemplate>

但我收到错误:

  

无效的资源类型:期望的类型是'PropertyPath',实际类型是'Array'。

当我运行我的程序并尝试使用此ComboBox打开窗口时,它会崩溃:

  

PresentationFramework.dll中出现'System.Windows.Markup.XamlParseException'类型的第一次机会异常       附加信息:'为'System.Windows.Markup.TypeExtension'提供价值引发了异常。行号'8'和行位置'12'。

     

如果存在此异常的处理程序,则可以安全地继续该程序。

1 个答案:

答案 0 :(得分:2)

ObjectDataProvider设为Source Binding而不是Path

<ComboBox ItemsSource="{Binding Source={StaticResource TypeFromEnum}}" />