Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / WebControls / ErrorTableItemStyle.cs / 1305376 / 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
- SafeBitVector32.cs
- StringUtil.cs
- AmbientLight.cs
- EntityClientCacheKey.cs
- Compiler.cs
- DataGridViewRowPostPaintEventArgs.cs
- ConstructorBuilder.cs
- StylusPointDescription.cs
- Console.cs
- CodeMemberEvent.cs
- MD5CryptoServiceProvider.cs
- GeneralTransformGroup.cs
- HostVisual.cs
- RegexWorker.cs
- SystemDiagnosticsSection.cs
- HttpWriter.cs
- SettingsPropertyCollection.cs
- FillErrorEventArgs.cs
- PrintControllerWithStatusDialog.cs
- SecurityTokenSerializer.cs
- HybridObjectCache.cs
- DetailsViewUpdatedEventArgs.cs
- ListViewGroup.cs
- ContextMenu.cs
- TdsParser.cs
- XmlExpressionDumper.cs
- ControlAdapter.cs
- ToolStripGrip.cs
- NamedPipeProcessProtocolHandler.cs
- PublishLicense.cs
- ChildDocumentBlock.cs
- ConfigurationException.cs
- ReturnType.cs
- DrawListViewSubItemEventArgs.cs
- UserControl.cs
- MenuItemCollectionEditor.cs
- PatternMatcher.cs
- TransformerTypeCollection.cs
- ObjectItemCollection.cs
- ToolStripTemplateNode.cs
- Serializer.cs
- CodeAttributeArgumentCollection.cs
- JsonCollectionDataContract.cs
- XmlExceptionHelper.cs
- XsdBuilder.cs
- DesignTimeVisibleAttribute.cs
- storepermissionattribute.cs
- SqlVisitor.cs
- GlobalProxySelection.cs
- WebAdminConfigurationHelper.cs
- NamespaceInfo.cs
- InkCollectionBehavior.cs
- MsmqIntegrationProcessProtocolHandler.cs
- EntityAdapter.cs
- ItemCollection.cs
- FileAccessException.cs
- Typography.cs
- SqlCacheDependencyDatabaseCollection.cs
- GridViewCancelEditEventArgs.cs
- Vector3DConverter.cs
- ScriptHandlerFactory.cs
- DateTime.cs
- initElementDictionary.cs
- XmlObjectSerializerReadContextComplexJson.cs
- ZoneMembershipCondition.cs
- SerTrace.cs
- DataGridItemCollection.cs
- WinFormsUtils.cs
- SeparatorAutomationPeer.cs
- DrawingContextWalker.cs
- PkcsUtils.cs
- QuaternionIndependentAnimationStorage.cs
- XLinq.cs
- DataGridColumn.cs
- EntityDataSourceReferenceGroup.cs
- ServerIdentity.cs
- ScrollPattern.cs
- IriParsingElement.cs
- WebControlAdapter.cs
- FileSecurity.cs
- Constraint.cs
- LinearGradientBrush.cs
- AssemblyAssociatedContentFileAttribute.cs
- DSACryptoServiceProvider.cs
- TrackingStringDictionary.cs
- WebPageTraceListener.cs
- MemberRelationshipService.cs
- WebMessageEncoderFactory.cs
- DurableInstanceProvider.cs
- DataGridViewComboBoxEditingControl.cs
- TextRangeSerialization.cs
- ResourceDictionaryCollection.cs
- SplitterCancelEvent.cs
- BindingsCollection.cs
- ObjectAnimationUsingKeyFrames.cs
- ProfessionalColorTable.cs
- DBSqlParserColumn.cs
- Transactions.cs
- IIS7UserPrincipal.cs
- ModelService.cs