Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.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
Wpf MVVM将枚举和枚举描述绑定到Devexpress LookUpEdit_Wpf_Xaml_Mvvm_Enums_Devexpress - Fatal编程技术网

Wpf MVVM将枚举和枚举描述绑定到Devexpress LookUpEdit

Wpf MVVM将枚举和枚举描述绑定到Devexpress LookUpEdit,wpf,xaml,mvvm,enums,devexpress,Wpf,Xaml,Mvvm,Enums,Devexpress,我想将枚举和枚举描述绑定到devexpress dxg:LookUpEdit,但无法执行此操作。我可以用ComboBox获得相同的结果,但我想在查找编辑的网格中显示出来。 这就是代码的样子。我有一个转换器,它将枚举转换为枚举描述 <dxg:LookUpEdit Name="lookUpEdit" SelectedItem="{Binding SelectedStatus}" ItemsSource="{Bin

我想将枚举和枚举描述绑定到devexpress dxg:LookUpEdit,但无法执行此操作。我可以用ComboBox获得相同的结果,但我想在查找编辑的网格中显示出来。 这就是代码的样子。我有一个转换器,它将枚举转换为枚举描述

 <dxg:LookUpEdit Name="lookUpEdit" SelectedItem="{Binding SelectedStatus}"
                                        ItemsSource="{Binding Statuses}"
                                        AutoComplete="True" AutoPopulateColumns="False" PopupWidth="250">
                    <dxg:LookUpEdit.PopupContentTemplate>
                        <ControlTemplate>
                            <dxg:GridControl Name="PART_GridControl">
                                <dxg:GridControl.Columns>
                                    <dxg:GridColumn Header="Filter" FieldName="Name" Width="100" />
                                    <dxg:GridColumn Header="Description" Width="100">
                                        <dxg:GridColumn.CellTemplate>
                                            <DataTemplate>
                                            <TextBlock>
                                              <Run Text="{Binding Mode=OneTime, Converter={StaticResource EnumToStringConverter}}"></Run>
                                            </TextBlock>
                                        </DataTemplate>
                                        </dxg:GridColumn.CellTemplate>
                                    </dxg:GridColumn>
                                </dxg:GridControl.Columns>
                                <dxg:GridControl.View>
                                    <dxg:TableView AllowEditing="False" ShowGroupPanel="False" />
                                </dxg:GridControl.View>
                            </dxg:GridControl>
                        </ControlTemplate>
                    </dxg:LookUpEdit.PopupContentTemplate>
                </dxg:LookUpEdit>

尝试按如下方式使用EnumItemsSource(对于此源,您可以设置自定义转换器以转换枚举值):


...

显示两列id和值。我想展示价值和描述。说明将来自enumToStringConverter。我还想知道SelectedItem将如何工作。
<Window.Resources>
    <local:EnumToStringConverter x:Key="enumToStringConverter"/>
</Window.Resources>
...
<dxg:LookUpEdit HorizontalAlignment="Stretch" VerticalAlignment="Top" 
                AutoPopulateColumns="False"
                ItemsSource="{dxe:EnumItemsSource EnumType={x:Type local:MyEnum}, NameConverter={StaticResource enumToStringConverter}, UseNumericEnumValue=True}"
                >
    <dxg:LookUpEdit.PopupContentTemplate>
        <ControlTemplate>
            <dxg:GridControl Name="PART_GridControl">
                <dxg:GridControl.Columns>
                    <dxg:GridColumn FieldName="Id" Header="ID"/>
                    <dxg:GridColumn FieldName="Value" Header="DESCRIPTION"/>
                </dxg:GridControl.Columns>
                <dxg:GridControl.View>
                    <dxg:TableView AllowEditing="False" ShowGroupPanel="False"/>
                </dxg:GridControl.View>
            </dxg:GridControl>
        </ControlTemplate>
    </dxg:LookUpEdit.PopupContentTemplate>
</dxg:LookUpEdit>