private static BindingMode CreateBindingForAddNewRow(GridColumn column) { PropertyDescriptorCollection itemproperties = (column.DataGrid != null && column.DataGrid.View != null) ? column.DataGrid.View.GetItemProperties() : null; if (itemproperties == null) { return(BindingMode.TwoWay); } var propDesc = itemproperties.GetPropertyDescriptor(column.MappingName); if (propDesc != null) { #if WPF if (propDesc.IsReadOnly) #else if (propDesc.SetMethod == null || !propDesc.SetMethod.IsPublic) #endif { return(BindingMode.OneWay); } } else if (propDesc == null) { if (column.AllowEditing && column.CanEditCell()) { return(BindingMode.TwoWay); } return(BindingMode.OneWay); } return(BindingMode.TwoWay); }