public object this[string name] { get { return(fields[name]); } set { if (value == null || value is DBNull) { return; } MapCore mapCore = GetMapCore(); if (mapCore != null) { Field field = (Field)mapCore.GroupFields.GetByName(name); if (field == null) { throw new ArgumentException(SR.ExceptionFieldNameDoesNotExist(name)); } if (!field.Type.IsInstanceOfType(value) && field.Type != Field.ConvertToSupportedType(value.GetType())) { throw new ArgumentException(SR.ExceptionFieldMustBeOfType(name, field.Type.ToString())); } field.SetValue(Field.ConvertToSupportedValue(value), fields); mapCore.InvalidateRules(); mapCore.InvalidateDataBinding(); } else { fields[name] = Field.ConvertToSupportedValue(value); } InvalidateViewport(); } }
public static void InitDesignDataTable(object dataSource, string dataMember, DataTable designDataTable) { if (dataSource == null) { return; } designDataTable.Clear(); designDataTable.Columns.Clear(); try { ArrayList dataSourceDataFields = GetDataSourceDataFields(dataSource, dataMember, string.Empty); if (dataSourceDataFields.Count == 0) { return; } foreach (DataFieldDescriptor item in dataSourceDataFields) { designDataTable.Columns.Add(item.Name, Field.ConvertToSupportedType(item.Type)); } } catch (Exception) { } }