1

我正在尝试使用 InitNewRow 事件填充 ASPXComboBox 以插入新行,但在将数据绑定到 ASPXComboBox 时遇到问题。

我已经使用 CellEditorInitialize 事件来编辑行并且它工作正常,但是 InitNewRow 事件上的相同主体出现了“对象未设置为对象的实例”异常。但是,被调用的业务逻辑函数返回一个完全填充的 DataTable。

有人可以帮忙吗?

4

1 回答 1

0

如果要设置组合框的数据源,请为此目的使用CellEditorInitialize事件。如果您需要确定网格何时在插入新行模式下工作,请使用 ASPxGridView 的IsNewRowEditing属性。即代码应该是这样的:

protected void ASPxGridView1_CellEditorInitialize(object sender, DevExpress.Web.ASPxGridView.ASPxGridViewEditorEventArgs e) {
        ASPxGridView grid = sender as ASPxGridView;
        if(e.Column.FieldName == "SomeFieldName" && grid.IsNewRowEditing) {
            ASPxComboBox combo = e.Editor as ASPxComboBox;
            combo.DataSource = DataTable;
            combo.DataBindItems();
        }
    }

这种方法对你有用吗?

于 2011-06-30T15:50:05.263 回答