Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF DataGridComboxColumn未获取绑定到枚举的属性(来自数据库的值)_C#_Wpf_Xaml_Datagrid_Enums - Fatal编程技术网

C# WPF DataGridComboxColumn未获取绑定到枚举的属性(来自数据库的值)

C# WPF DataGridComboxColumn未获取绑定到枚举的属性(来自数据库的值),c#,wpf,xaml,datagrid,enums,C#,Wpf,Xaml,Datagrid,Enums,我在获取要在DataGridComboxColumn中显示的属性时遇到问题。但是,当从这个组合框中选择一个值时,setter将被更新,并且数据库将在保存时更改。(基本上它的工作界面是->模型,但我不认为模型->用户界面…) 基本上,我有一个DataGridComboxColumn,它绑定到一个枚举。这是我认为问题所在的XAML <DataGrid x:Name="dgProductItem" ItemsSource="{Binding ProductVersion.P

我在获取要在DataGridComboxColumn中显示的属性时遇到问题。但是,当从这个组合框中选择一个值时,setter将被更新,并且数据库将在保存时更改。(基本上它的工作界面是->模型,但我不认为模型->用户界面…)

基本上,我有一个DataGridComboxColumn,它绑定到一个枚举。这是我认为问题所在的XAML

<DataGrid x:Name="dgProductItem" 
          ItemsSource="{Binding ProductVersion.ProductItems}"

<DataGridComboBoxColumn Header="Deployment Type" 
        SelectedItemBinding="{Binding DeploymentType, Mode=TwoWay}"
        SelectedValuePath="DeploymentType" Width="120">
任何帮助都是有用的


感谢

获取列表,您应该有办法从枚举类型中提取列表

XAML

在资源级别设置此选项:

    <ObjectDataProvider x:Key="DeploymentTypeEnum" MethodName="GetValues"
                        ObjectType="{x:Type System:Enum}">
        <ObjectDataProvider.MethodParameters>
            <x:Type TypeName="local:DeploymentType"/>
        </ObjectDataProvider.MethodParameters>
    </ObjectDataProvider>

嗨,Lucas,我已经有了这段代码(我可以将枚举类型绑定到combobox),但是我只需要将数据库中的类型绑定到combobox。但我认为它只是在此时获取默认值或第一个枚举。你是说,当你在DeploymentType中设置值时,该值没有进入数据网格?嗨,Lucas,这就是发生的事情,但我现在已经开始工作了,所以我会发布答案。对于重复,我深表歉意。答案是:
public DeploymentType DeploymentType
{
    get
    {
        return m_DeploymentType;
    }

    set
    {
        m_DeploymentType = value
        PropertyChanged("DeploymentType")
    }
}
    <ObjectDataProvider x:Key="DeploymentTypeEnum" MethodName="GetValues"
                        ObjectType="{x:Type System:Enum}">
        <ObjectDataProvider.MethodParameters>
            <x:Type TypeName="local:DeploymentType"/>
        </ObjectDataProvider.MethodParameters>
    </ObjectDataProvider>
         xmlns:local="clr-namespace:ProjectNamespace"
         xmlns:System="clr-namespace:System;assembly=mscorlib"