Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / Data / System / Data / DataColumnPropertyDescriptor.cs / 1 / DataColumnPropertyDescriptor.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //[....] //----------------------------------------------------------------------------- namespace System.Data { using System.Diagnostics; using System.ComponentModel; using System.Data.Common; internal sealed class DataColumnPropertyDescriptor : PropertyDescriptor { DataColumn column; internal DataColumnPropertyDescriptor(DataColumn dataColumn) : base(dataColumn.ColumnName, null) { this.column = dataColumn; } public override AttributeCollection Attributes { get { if (typeof(System.Collections.IList).IsAssignableFrom(this.PropertyType)) { Attribute[] attrs = new Attribute[base.Attributes.Count + 1]; base.Attributes.CopyTo(attrs, 0); // we don't want to show the columns which are of type IList in the designer attrs[attrs.Length - 1] = new ListBindableAttribute(false); return new AttributeCollection(attrs); } else { return base.Attributes; } } } internal DataColumn Column { get { return column; } } public override Type ComponentType { get { return typeof(DataRowView); } } public override bool IsReadOnly { get { return column.ReadOnly; } } public override Type PropertyType { get { return column.DataType; } } public override bool Equals(object other) { if (other is DataColumnPropertyDescriptor) { DataColumnPropertyDescriptor descriptor = (DataColumnPropertyDescriptor) other; return(descriptor.Column == Column); } return false; } public override Int32 GetHashCode() { return Column.GetHashCode(); } public override bool CanResetValue(object component) { DataRowView dataRowView = (DataRowView) component; if (!column.IsSqlType) return (dataRowView.GetColumnValue(column) != DBNull.Value); return (!DataStorage.IsObjectNull(dataRowView.GetColumnValue(column))); } public override object GetValue(object component) { DataRowView dataRowView = (DataRowView) component; return dataRowView.GetColumnValue(column); } public override void ResetValue(object component) { DataRowView dataRowView = (DataRowView) component; dataRowView.SetColumnValue(column, DBNull.Value);// no need to ccheck for the col type and set Sql...Null! } public override void SetValue(object component, object value) { DataRowView dataRowView = (DataRowView) component; dataRowView.SetColumnValue(column, value); OnValueChanged(component, EventArgs.Empty); } public override bool ShouldSerializeValue(object component) { return false; } public override bool IsBrowsable { get { return (column.ColumnMapping == System.Data.MappingType.Hidden ? false : base.IsBrowsable); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //[....] //----------------------------------------------------------------------------- namespace System.Data { using System.Diagnostics; using System.ComponentModel; using System.Data.Common; internal sealed class DataColumnPropertyDescriptor : PropertyDescriptor { DataColumn column; internal DataColumnPropertyDescriptor(DataColumn dataColumn) : base(dataColumn.ColumnName, null) { this.column = dataColumn; } public override AttributeCollection Attributes { get { if (typeof(System.Collections.IList).IsAssignableFrom(this.PropertyType)) { Attribute[] attrs = new Attribute[base.Attributes.Count + 1]; base.Attributes.CopyTo(attrs, 0); // we don't want to show the columns which are of type IList in the designer attrs[attrs.Length - 1] = new ListBindableAttribute(false); return new AttributeCollection(attrs); } else { return base.Attributes; } } } internal DataColumn Column { get { return column; } } public override Type ComponentType { get { return typeof(DataRowView); } } public override bool IsReadOnly { get { return column.ReadOnly; } } public override Type PropertyType { get { return column.DataType; } } public override bool Equals(object other) { if (other is DataColumnPropertyDescriptor) { DataColumnPropertyDescriptor descriptor = (DataColumnPropertyDescriptor) other; return(descriptor.Column == Column); } return false; } public override Int32 GetHashCode() { return Column.GetHashCode(); } public override bool CanResetValue(object component) { DataRowView dataRowView = (DataRowView) component; if (!column.IsSqlType) return (dataRowView.GetColumnValue(column) != DBNull.Value); return (!DataStorage.IsObjectNull(dataRowView.GetColumnValue(column))); } public override object GetValue(object component) { DataRowView dataRowView = (DataRowView) component; return dataRowView.GetColumnValue(column); } public override void ResetValue(object component) { DataRowView dataRowView = (DataRowView) component; dataRowView.SetColumnValue(column, DBNull.Value);// no need to ccheck for the col type and set Sql...Null! } public override void SetValue(object component, object value) { DataRowView dataRowView = (DataRowView) component; dataRowView.SetColumnValue(column, value); OnValueChanged(component, EventArgs.Empty); } public override bool ShouldSerializeValue(object component) { return false; } public override bool IsBrowsable { get { return (column.ColumnMapping == System.Data.MappingType.Hidden ? false : base.IsBrowsable); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataGridViewSelectedRowCollection.cs
- errorpatternmatcher.cs
- jithelpers.cs
- OAVariantLib.cs
- CompletedAsyncResult.cs
- StandardCommands.cs
- FontDialog.cs
- FlowDocumentPage.cs
- EraserBehavior.cs
- SingletonConnectionReader.cs
- Mappings.cs
- PaperSize.cs
- ResourceManager.cs
- ContentElement.cs
- ParameterCollection.cs
- altserialization.cs
- DataGridCaption.cs
- XNameConverter.cs
- oledbmetadatacolumnnames.cs
- CodePropertyReferenceExpression.cs
- IdentityHolder.cs
- DataControlFieldHeaderCell.cs
- WorkflowLayouts.cs
- BackgroundWorker.cs
- ContainerFilterService.cs
- XhtmlConformanceSection.cs
- Table.cs
- propertytag.cs
- DataControlFieldsEditor.cs
- XmlWriterTraceListener.cs
- AlphabeticalEnumConverter.cs
- DataGridViewCellToolTipTextNeededEventArgs.cs
- StyleSelector.cs
- SimpleBitVector32.cs
- TypeConverterHelper.cs
- OdbcParameterCollection.cs
- CodeParameterDeclarationExpression.cs
- StringValueSerializer.cs
- XamlDebuggerXmlReader.cs
- ObjectConverter.cs
- GridViewRowPresenterBase.cs
- CodeThrowExceptionStatement.cs
- SqlDataReader.cs
- ContentOperations.cs
- CqlBlock.cs
- TemplateControlParser.cs
- TokenFactoryBase.cs
- SHA256.cs
- ToolStripDropDownItemDesigner.cs
- Menu.cs
- MemoryMappedFile.cs
- StrokeCollection2.cs
- XmlSchemaSimpleContentExtension.cs
- ApplicationCommands.cs
- HtmlInputCheckBox.cs
- ObjectDisposedException.cs
- WebPartMenuStyle.cs
- SiteMapDataSourceView.cs
- ImageDrawing.cs
- DataViewListener.cs
- relpropertyhelper.cs
- DataGridViewRowsAddedEventArgs.cs
- DataServiceException.cs
- BlurBitmapEffect.cs
- ActivityDesignerLayoutSerializers.cs
- AuthenticateEventArgs.cs
- Int16Converter.cs
- PrimarySelectionGlyph.cs
- CursorConverter.cs
- MediaElementAutomationPeer.cs
- SvcMapFileSerializer.cs
- TypeGenericEnumerableViewSchema.cs
- HttpProfileBase.cs
- DataGridViewCellEventArgs.cs
- ProjectionPruner.cs
- UnmanagedMemoryStreamWrapper.cs
- BoolExpr.cs
- CollectionChangeEventArgs.cs
- CompilerLocalReference.cs
- KoreanLunisolarCalendar.cs
- DataSvcMapFile.cs
- Crypto.cs
- BoundPropertyEntry.cs
- PromptBuilder.cs
- BitmapEncoder.cs
- ColumnHeader.cs
- ExpressionBindingCollection.cs
- VisualStateGroup.cs
- MouseBinding.cs
- ToolStripOverflow.cs
- Identifier.cs
- UrlMapping.cs
- UpdateManifestForBrowserApplication.cs
- FontTypeConverter.cs
- ProcessingInstructionAction.cs
- EtwProvider.cs
- ImpersonationContext.cs
- ClientSettingsStore.cs
- DiscoveryServerProtocol.cs
- BreakRecordTable.cs