WPF Toolkit可编辑的组合框

时间:2016-01-13 12:01:44

标签: combobox wpftoolkit

我试图在WPFTOOLKIT数据网格中实现可编辑的组合框。用户必须能够键入新值。使用MVVM进行绑定。 除了这个问题之外,一切都运行良好:输入新值后,当退出组合时,该值将丢失。

这是我的XAML代码:

<xcdg:Column FieldName="FlangeType"  Title="Flange Type"  Width="80" >

    <xcdg:Column.CellEditor>
          <xcdg:CellEditor>
                <xcdg:CellEditor.EditTemplate>
                       <DataTemplate>
                            <ComboBox
                                            ItemsSource="{Binding Path= DataContext.FlangeTypes, RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}" 
                                            SelectedValue="{xcdg:CellEditorBinding}"
                                            Text="{Binding Path=DataContext.CurrentDrumStandard.FlangeType,UpdateSourceTrigger=LostFocus}"
                                            IsEditable="True"/>
                         </DataTemplate>
                    </xcdg:CellEditor.EditTemplate>
              </xcdg:CellEditor>
      </xcdg:Column.CellEditor>

</xcdg:Column> 

提前感谢您提供任何帮助

1 个答案:

答案 0 :(得分:0)

实际上我错过了Text属性的RelativeSource。

更新的代码:  

                                <xcdg:Column.CellEditor>
                                    <xcdg:CellEditor>
                                        <xcdg:CellEditor.EditTemplate>
                                            <DataTemplate>
                                                <ComboBox
                                                    ItemsSource="{Binding DataContext.FlangeTypes, RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}" 
                                                    SelectedValue="{xcdg:CellEditorBinding}"
                                                    Text="{Binding DataContext.CurrentDrumStandard.FlangeType, RelativeSource={RelativeSource AncestorType={x:Type UserControl}}, UpdateSourceTrigger=LostFocus}"
                                                    IsEditable="True"/>
                                            </DataTemplate>
                                        </xcdg:CellEditor.EditTemplate>
                                    </xcdg:CellEditor>
                                </xcdg:Column.CellEditor>

                            </xcdg:Column>