Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / WebControls / ErrorStyle.cs / 2 / ErrorStyle.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design; using System.Drawing; // A derived Style class with the default ForeColor set to Color.Red instead of Color.Empty internal sealed class ErrorStyle : Style, ICustomTypeDescriptor { public ErrorStyle() : 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 } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MatrixTransform3D.cs
- WebPartCancelEventArgs.cs
- InputMethod.cs
- HuffModule.cs
- DelegatingTypeDescriptionProvider.cs
- Timer.cs
- DbBuffer.cs
- InstanceLockQueryResult.cs
- DebugControllerThread.cs
- XPathNodePointer.cs
- SoapEnumAttribute.cs
- InfoCardAsymmetricCrypto.cs
- AuthenticationConfig.cs
- contentDescriptor.cs
- TreeView.cs
- CngProvider.cs
- HashFinalRequest.cs
- RootProfilePropertySettingsCollection.cs
- EditorPartChrome.cs
- ToolBarDesigner.cs
- EventlogProvider.cs
- DynamicRenderer.cs
- HttpRuntime.cs
- HandledEventArgs.cs
- SQLInt32.cs
- TagPrefixAttribute.cs
- BrowserCapabilitiesFactoryBase.cs
- RadialGradientBrush.cs
- PenLineJoinValidation.cs
- Dictionary.cs
- InfiniteTimeSpanConverter.cs
- Clause.cs
- EndpointDiscoveryMetadata11.cs
- SynchronizationContext.cs
- SlotInfo.cs
- AuthorizationContext.cs
- PolygonHotSpot.cs
- RefreshPropertiesAttribute.cs
- WebBrowsableAttribute.cs
- Dictionary.cs
- TextSegment.cs
- SweepDirectionValidation.cs
- SecurityHeaderTokenResolver.cs
- AuthenticationService.cs
- DbBuffer.cs
- EffectiveValueEntry.cs
- Win32PrintDialog.cs
- DependencySource.cs
- EndpointBehaviorElement.cs
- XsdDuration.cs
- TextLineBreak.cs
- LinkTarget.cs
- MimeMapping.cs
- ComponentConverter.cs
- FillBehavior.cs
- SurrogateDataContract.cs
- MatrixTransform.cs
- ResourcePermissionBaseEntry.cs
- RowToFieldTransformer.cs
- DataSourceUtil.cs
- RegexNode.cs
- ToolStripSplitStackLayout.cs
- RenderDataDrawingContext.cs
- RadialGradientBrush.cs
- FocusTracker.cs
- PeerName.cs
- SafeArchiveContext.cs
- CodeVariableDeclarationStatement.cs
- BuildResultCache.cs
- DataGridViewRowHeightInfoNeededEventArgs.cs
- StringPropertyBuilder.cs
- Array.cs
- SimpleMailWebEventProvider.cs
- VariableQuery.cs
- DataMemberConverter.cs
- XslAstAnalyzer.cs
- SimpleRecyclingCache.cs
- DockPatternIdentifiers.cs
- ViewStateModeByIdAttribute.cs
- SqlUtils.cs
- DataTableCollection.cs
- TypeConstant.cs
- CatalogZone.cs
- LongValidatorAttribute.cs
- CustomAttributeFormatException.cs
- DesigntimeLicenseContext.cs
- MethodImplAttribute.cs
- OracleDataReader.cs
- AssemblyContextControlItem.cs
- JobCollate.cs
- TrustLevel.cs
- SemaphoreFullException.cs
- OpenTypeLayoutCache.cs
- DataGridViewCellErrorTextNeededEventArgs.cs
- MediaElement.cs
- DbProviderConfigurationHandler.cs
- HeaderFilter.cs
- LineBreak.cs
- DataGridViewLinkColumn.cs
- WmfPlaceableFileHeader.cs