GridView 单元格中的 Devexpress ComboBoxEdit

Devexpress ComboBoxEdit in GridView Cell

我有 ComboBoxEdit 填充了数据,我想把它放到列中。

        ComboBoxEdit cbe = new ComboBoxEdit();

        DataTable dt = Getdt();

        cbe.Properties.Items.Clear();

        foreach(DataRow item in dt.Rows)
        {
            cbe.Properties.Items.Add(item);
        }
        //ElementsEdit ee
        ee.gvView.Columns[ColumnName].ColumnEdit = cbeMaterialy;

没用。任何帮助表示赞赏;)

PS。如何将完整的 DataTable 分配给 ComboBoxEdit。

ComboBoxEdit 是一个控件。但是,列接受 RepositoryItem 实例作为 ColumnEdit。所以,你需要使用 RepositoryItemComboBox:

    RepositoryItemComboBox cbeMaterialy = new RepositoryItemComboBox();

    DataTable dt = Getdt();

    cbeMaterialy.Items.Clear();

    foreach(DataRow item in dt.Rows)
    {
        cbeMaterialy.Items.Add(item);
    }

    gvView.Columns["ColumnName"].ColumnEdit = cbeMaterialy;

对于可用于将其直接绑定到 DataTable 的编辑器,请使用 RepositoryItemGridLookUpEdit. It has the DataSource 属性 分配您的 DataTable。

RepositoryItemGridLookUpEdit editor = new RepositoryItemGridLookUpEdit();
editor.DataSource = dt;
column.ColumnEdit = editor;