网格控件中的ComboBox ItemsSource错误

时间:2015-08-06 21:05:44

标签: c# wpf mvvm combobox devexpress

我想在网格控件中实现comboBox。在网上搜索后,我找到了2个解决方案,每个解决方案都有问题:

  1. 使用 ComboBoxEditSettings ,如下所示但我无法实现属性EditValue =“..”,因为ComboBoxEditSettings不支持它。

         <dxg:GridControl AutoGenerateColumns="AddNew" ItemsSource="{Binding Path=FilterList,Mode=TwoWay}" EnableSmartColumnsGeneration="True">
            <dxg:GridControl.Columns>
                <dxg:GridColumn Header="Table" FieldName="Table" HorizontalHeaderContentAlignment="Center" FilterPopupMode="CheckedList" AllowEditing="True" >
              <dxg:GridColumn.EditSettings  >
    
               <dxe:ComboBoxEditSettings  IsTextEditable="False" ItemsSource="{ Binding FilterTables}"   >
                 </dxe:ComboBoxEditSettings>
              </dxg:GridColumn.EditSettings>
     </dxg:GridColumn>
    

  2. DataTemplate 中使用 ComboBoxEdit ,但我的comboBox中没有显示任何内容。

    <dxg:GridColumn Header="Table" FieldName="Table" HorizontalHeaderContentAlignment="Center" FilterPopupMode="CheckedList" AllowEditing="True" >   
    <dxg:GridColumn.CellTemplate>
         <DataTemplate>
            <dxe:ComboBoxEdit AutoComplete="True" IsTextEditable="False"
                  ItemsSource="{Binding FilterTables, Mode=TwoWay}">
            </dxe:ComboBoxEdit>
          </DataTemplate>  
    

  3. MyViewModel.cs

    private ObservableCollection<string> _filterTables;
    public ObservableCollection<string> FilterTables
            {
                get { return _filterTables; }
                set
                {
                    SetProperty(ref _filterTables, value, () => FilterTables); 
                }
            }
    

    所以我的问题是如何在GridControl中使用comboBox和属性EditValue =“..”?

0 个答案:

没有答案