Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / xsp / System / Web / UI / WebControls / ErrorTableItemStyle.cs / 5 / ErrorTableItemStyle.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System; using System.ComponentModel; using System.Drawing; // A derived TableItemStyle class with the default ForeColor set to Color.Red instead of Color.Empty internal sealed class ErrorTableItemStyle : TableItemStyle, ICustomTypeDescriptor { public ErrorTableItemStyle() : base() { ForeColor = Color.Red; } #region ICustomTypeDesciptor implementation AttributeCollection ICustomTypeDescriptor.GetAttributes() { return TypeDescriptor.GetAttributes(this, true); } string ICustomTypeDescriptor.GetClassName() { return TypeDescriptor.GetClassName(this, true); } string ICustomTypeDescriptor.GetComponentName() { return TypeDescriptor.GetComponentName(this, true); } TypeConverter ICustomTypeDescriptor.GetConverter() { return TypeDescriptor.GetConverter(this, true); } EventDescriptor ICustomTypeDescriptor.GetDefaultEvent() { return TypeDescriptor.GetDefaultEvent(this, true); } PropertyDescriptor ICustomTypeDescriptor.GetDefaultProperty() { return TypeDescriptor.GetDefaultProperty(this, true); } object ICustomTypeDescriptor.GetEditor(Type editorBaseType) { return TypeDescriptor.GetEditor(this, editorBaseType, true); } EventDescriptorCollection ICustomTypeDescriptor.GetEvents() { return TypeDescriptor.GetEvents(this, true); } EventDescriptorCollection ICustomTypeDescriptor.GetEvents(Attribute[] attributes) { return TypeDescriptor.GetEvents(this, attributes, true); } PropertyDescriptorCollection ICustomTypeDescriptor.GetProperties() { return ((ICustomTypeDescriptor)this).GetProperties(null); } PropertyDescriptorCollection ICustomTypeDescriptor.GetProperties(Attribute[] attributes) { PropertyDescriptorCollection oldProperties = TypeDescriptor.GetProperties(GetType(), attributes); PropertyDescriptor[] newProperties = new PropertyDescriptor[oldProperties.Count]; PropertyDescriptor foreColor = oldProperties["ForeColor"]; for (int i=0; i < oldProperties.Count; i++) { PropertyDescriptor property = oldProperties[i]; if (property == foreColor) { newProperties[i] = TypeDescriptor.CreateProperty( GetType(), property, new DefaultValueAttribute(typeof(Color), "Red")); } else { newProperties[i] = property; } } return new PropertyDescriptorCollection(newProperties, true); } object ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor pd) { return this; } #endregion //ICustomTypeDescriptor implementation } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System; using System.ComponentModel; using System.Drawing; // A derived TableItemStyle class with the default ForeColor set to Color.Red instead of Color.Empty internal sealed class ErrorTableItemStyle : TableItemStyle, ICustomTypeDescriptor { public ErrorTableItemStyle() : base() { ForeColor = Color.Red; } #region ICustomTypeDesciptor implementation AttributeCollection ICustomTypeDescriptor.GetAttributes() { return TypeDescriptor.GetAttributes(this, true); } string ICustomTypeDescriptor.GetClassName() { return TypeDescriptor.GetClassName(this, true); } string ICustomTypeDescriptor.GetComponentName() { return TypeDescriptor.GetComponentName(this, true); } TypeConverter ICustomTypeDescriptor.GetConverter() { return TypeDescriptor.GetConverter(this, true); } EventDescriptor ICustomTypeDescriptor.GetDefaultEvent() { return TypeDescriptor.GetDefaultEvent(this, true); } PropertyDescriptor ICustomTypeDescriptor.GetDefaultProperty() { return TypeDescriptor.GetDefaultProperty(this, true); } object ICustomTypeDescriptor.GetEditor(Type editorBaseType) { return TypeDescriptor.GetEditor(this, editorBaseType, true); } EventDescriptorCollection ICustomTypeDescriptor.GetEvents() { return TypeDescriptor.GetEvents(this, true); } EventDescriptorCollection ICustomTypeDescriptor.GetEvents(Attribute[] attributes) { return TypeDescriptor.GetEvents(this, attributes, true); } PropertyDescriptorCollection ICustomTypeDescriptor.GetProperties() { return ((ICustomTypeDescriptor)this).GetProperties(null); } PropertyDescriptorCollection ICustomTypeDescriptor.GetProperties(Attribute[] attributes) { PropertyDescriptorCollection oldProperties = TypeDescriptor.GetProperties(GetType(), attributes); PropertyDescriptor[] newProperties = new PropertyDescriptor[oldProperties.Count]; PropertyDescriptor foreColor = oldProperties["ForeColor"]; for (int i=0; i < oldProperties.Count; i++) { PropertyDescriptor property = oldProperties[i]; if (property == foreColor) { newProperties[i] = TypeDescriptor.CreateProperty( GetType(), property, new DefaultValueAttribute(typeof(Color), "Red")); } else { newProperties[i] = property; } } return new PropertyDescriptorCollection(newProperties, true); } object ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor pd) { return this; } #endregion //ICustomTypeDescriptor implementation } } // 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
- MouseGestureConverter.cs
- TraceHandler.cs
- DataObjectCopyingEventArgs.cs
- ControlBindingsCollection.cs
- DBDataPermissionAttribute.cs
- GridItemCollection.cs
- MutexSecurity.cs
- ScrollBar.cs
- JapaneseCalendar.cs
- CharEntityEncoderFallback.cs
- ComponentChangedEvent.cs
- PageBuildProvider.cs
- PropertyDescriptorComparer.cs
- BinaryWriter.cs
- MD5CryptoServiceProvider.cs
- ProfileModule.cs
- Item.cs
- HttpListenerContext.cs
- LoginCancelEventArgs.cs
- MdImport.cs
- SrgsDocument.cs
- _UriSyntax.cs
- CommonObjectSecurity.cs
- XmlAutoDetectWriter.cs
- IISMapPath.cs
- SystemDiagnosticsSection.cs
- SplitterPanel.cs
- Container.cs
- XmlSchemaObjectCollection.cs
- CorrelationTokenTypeConvertor.cs
- ManipulationPivot.cs
- BitmapSizeOptions.cs
- SynchronizationLockException.cs
- HtmlTable.cs
- ComPlusTraceRecord.cs
- Currency.cs
- EmptyEnumerator.cs
- XmlExpressionDumper.cs
- SizeConverter.cs
- RectAnimation.cs
- SettingsContext.cs
- InvalidAsynchronousStateException.cs
- ValueType.cs
- HMACSHA512.cs
- SafeThreadHandle.cs
- XsdBuilder.cs
- HandlerWithFactory.cs
- IFlowDocumentViewer.cs
- CryptoApi.cs
- _UriTypeConverter.cs
- FlowDocumentScrollViewer.cs
- XhtmlBasicValidatorAdapter.cs
- HttpClientCertificate.cs
- QilInvoke.cs
- RenderContext.cs
- TextSegment.cs
- LinqDataSourceValidationException.cs
- DataGridViewButtonColumn.cs
- StaticDataManager.cs
- TypeElement.cs
- UiaCoreApi.cs
- SettingsPropertyValue.cs
- DesignSurface.cs
- CmsInterop.cs
- DataSourceExpression.cs
- SecurityTokenValidationException.cs
- UIElementPropertyUndoUnit.cs
- BackgroundFormatInfo.cs
- XmlNamespaceMapping.cs
- Util.cs
- NativeMethods.cs
- WizardStepBase.cs
- BindingEditor.xaml.cs
- ContactManager.cs
- CFStream.cs
- Globals.cs
- VisualTarget.cs
- DataServiceResponse.cs
- GridViewPageEventArgs.cs
- AxisAngleRotation3D.cs
- PrintController.cs
- SiteMapDesignerDataSourceView.cs
- SafeSystemMetrics.cs
- DataGridViewColumnConverter.cs
- StringSorter.cs
- FileDialogPermission.cs
- Menu.cs
- CreateUserWizardAutoFormat.cs
- SafeNativeMethods.cs
- ConfigViewGenerator.cs
- LocalizedNameDescriptionPair.cs
- Roles.cs
- Property.cs
- UnmanagedMemoryStream.cs
- Util.cs
- RadioButtonBaseAdapter.cs
- HtmlInputCheckBox.cs
- DbConnectionPoolIdentity.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- BitmapEffectDrawingContextWalker.cs