Элемент управления в шаблоне отображения теряет значение после того, как шаблон редактирования приведен в действие в dxg:столбец сетки GridControl

#wpf #devexpress #celltemplate

Вопрос:

у меня есть dxg:GridControl, в котором у меня есть dxg:GridColumn, и в каждой строке есть шаблон отображения и редактирования, как показано ниже

 <dxg:GridControl>
    <dxg:GridControl.Columns>
          <dxg:GridColumn Width="101"
                                AllowBestFit="True"
                                AllowColumnFiltering="True"
                                AllowSorting="False"
                                FieldName="Tolerance"
                                Header="Tolerance Type"
                                ReadOnly="{Binding IsReadOnly}">
                    <dxg:GridColumn.EditTemplate>
                        <ControlTemplate>
                            <dxe:ComboBoxEdit
                                        x:Name="PART_Editor"
                                        Width="100"
                                        ItemsSource="{Binding Path=DataContext.ToleranceTypeCollection,
                                                                          RelativeSource={RelativeSource FindAncestor,
                                                                                                         AncestorType={x:Type UserControl}}}"
                                        SelectedItem="{Binding RowData.Row.Tolerance}"
                                        DisplayMember="ToleranceType"
                                        FilterCondition="Contains"
                                        ImmediatePopup="True"
                                        IncrementalFiltering="True"
                                        IsTextEditable="False"
                                        ValueMember="ToleranceTypeId"
                                        ShowSizeGrip="True"
                                        TextWrapping="WrapWithOverflow"
                                        Style="{DynamicResource DXEComboBoxEditStyle}" />
                            <ControlTemplate.Triggers>
                                <DataTrigger Binding="{Binding Path=DataContext.ToleranceTypeCollection.Count, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}}" Value="0">
                                    <Setter TargetName="PART_Editor" Property="IsEnabled" Value="False" />
                                </DataTrigger>
                                <DataTrigger Binding="{Binding DataContext.IsReadOnly, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}}" Value="True">
                                    <Setter TargetName="PART_Editor" Property="IsEnabled" Value="False" />
                                </DataTrigger>
                            </ControlTemplate.Triggers>
                        </ControlTemplate>
                    </dxg:GridColumn.EditTemplate>
                    <dxg:GridColumn.DisplayTemplate>
                        <ControlTemplate>
                            <TextBlock Margin="5,0,0,0" VerticalAlignment="Center" Text="{Binding RowData.Row.Tolerance.ToleranceType}" />
                        </ControlTemplate>
                    </dxg:GridColumn.DisplayTemplate>
                </dxg:GridColumn>

    </dxg:GridControl.Columns>
</dxg:GridControl>
 

значения хорошо отображаются в шаблоне отображения, но при нажатии на ячейку элемент управления меняется на dxe:ComboBoxEdit, но он автоматически не выбирает сохраненное значение из списка значений в раскрывающемся списке, поэтому значение в текстовом поле шаблонов отображения теряется после нажатия в другом месте.

Использование Dev Express v 18.1

Пожалуйста, помогите в том же Спасибо