Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / WinForms / Managed / System / WinForms / Design / PropertyTab.cs / 1305376 / PropertyTab.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms.Design { using System.Runtime.InteropServices; using System.ComponentModel; using System.Diagnostics; using System; using System.Drawing; using System.Windows.Forms; using Microsoft.Win32; using System.Runtime.Versioning; ////// /// [System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.InheritanceDemand, Name="FullTrust")] public abstract class PropertyTab : IExtenderProvider { private Object[] components; private Bitmap bitmap; private bool checkedBmp; ///Provides a base class for property tabs. ///~PropertyTab() { Dispose(false); } // don't override this. Just put a 16x16 bitmap in a file with the same name as your class in your resources. /// /// /// public virtual Bitmap Bitmap { [ResourceExposure(ResourceScope.Machine)] [ResourceConsumption(ResourceScope.Machine)] get { if (!checkedBmp && bitmap == null) { string bmpName = GetType().Name + ".bmp"; try { bitmap = new Bitmap(GetType(), bmpName); } catch (Exception ex) { Debug.Fail("Failed to find bitmap '" + bmpName + "' for class " + GetType().FullName, ex.ToString()); } checkedBmp = true; } return bitmap; } } // don't override this either. ///Gets or sets a bitmap to display in the property tab. ////// /// public virtual Object[] Components { get { return components; } set { this.components = value; } } // okay. Override this to give a good TabName. ///Gets or sets the array of components the property tab is associated with. ////// /// public abstract string TabName { get; } ///Gets or sets the name for the property tab. ////// /// public virtual string HelpKeyword { get { return TabName; } } // override this to reject components you don't want to support. ///Gets or sets the help keyword that is to be associated with this tab. This defaults /// to the tab name. ////// /// public virtual bool CanExtend(Object extendee) { return true; } ///Gets a value indicating whether the specified object be can extended. ////// /// public virtual void Dispose() { Dispose(true); GC.SuppressFinalize(this); } ///[To be supplied.] ///protected virtual void Dispose(bool disposing) { if (disposing) { if (bitmap != null) { bitmap.Dispose(); bitmap = null; } } } // return the default property item /// /// /// public virtual PropertyDescriptor GetDefaultProperty(Object component) { return TypeDescriptor.GetDefaultProperty(component); } // okay, override this to return whatever you want to return... All properties must apply to component. ///Gets the default property of the specified component. ////// /// public virtual PropertyDescriptorCollection GetProperties(Object component) { return GetProperties(component, null); } ///Gets the properties of the specified component. ////// /// public abstract PropertyDescriptorCollection GetProperties(object component, Attribute[] attributes); ///Gets the properties of the specified component which match the specified /// attributes. ////// /// public virtual PropertyDescriptorCollection GetProperties(ITypeDescriptorContext context, object component, Attribute[] attributes) { return GetProperties(component, attributes); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //Gets the properties of the specified component... ///// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms.Design { using System.Runtime.InteropServices; using System.ComponentModel; using System.Diagnostics; using System; using System.Drawing; using System.Windows.Forms; using Microsoft.Win32; using System.Runtime.Versioning; ////// /// [System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.InheritanceDemand, Name="FullTrust")] public abstract class PropertyTab : IExtenderProvider { private Object[] components; private Bitmap bitmap; private bool checkedBmp; ///Provides a base class for property tabs. ///~PropertyTab() { Dispose(false); } // don't override this. Just put a 16x16 bitmap in a file with the same name as your class in your resources. /// /// /// public virtual Bitmap Bitmap { [ResourceExposure(ResourceScope.Machine)] [ResourceConsumption(ResourceScope.Machine)] get { if (!checkedBmp && bitmap == null) { string bmpName = GetType().Name + ".bmp"; try { bitmap = new Bitmap(GetType(), bmpName); } catch (Exception ex) { Debug.Fail("Failed to find bitmap '" + bmpName + "' for class " + GetType().FullName, ex.ToString()); } checkedBmp = true; } return bitmap; } } // don't override this either. ///Gets or sets a bitmap to display in the property tab. ////// /// public virtual Object[] Components { get { return components; } set { this.components = value; } } // okay. Override this to give a good TabName. ///Gets or sets the array of components the property tab is associated with. ////// /// public abstract string TabName { get; } ///Gets or sets the name for the property tab. ////// /// public virtual string HelpKeyword { get { return TabName; } } // override this to reject components you don't want to support. ///Gets or sets the help keyword that is to be associated with this tab. This defaults /// to the tab name. ////// /// public virtual bool CanExtend(Object extendee) { return true; } ///Gets a value indicating whether the specified object be can extended. ////// /// public virtual void Dispose() { Dispose(true); GC.SuppressFinalize(this); } ///[To be supplied.] ///protected virtual void Dispose(bool disposing) { if (disposing) { if (bitmap != null) { bitmap.Dispose(); bitmap = null; } } } // return the default property item /// /// /// public virtual PropertyDescriptor GetDefaultProperty(Object component) { return TypeDescriptor.GetDefaultProperty(component); } // okay, override this to return whatever you want to return... All properties must apply to component. ///Gets the default property of the specified component. ////// /// public virtual PropertyDescriptorCollection GetProperties(Object component) { return GetProperties(component, null); } ///Gets the properties of the specified component. ////// /// public abstract PropertyDescriptorCollection GetProperties(object component, Attribute[] attributes); ///Gets the properties of the specified component which match the specified /// attributes. ////// /// public virtual PropertyDescriptorCollection GetProperties(ITypeDescriptorContext context, object component, Attribute[] attributes) { return GetProperties(component, attributes); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.Gets the properties of the specified component... ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TargetPerspective.cs
- MimeAnyImporter.cs
- ValueSerializerAttribute.cs
- DbDataReader.cs
- NonSerializedAttribute.cs
- PolyQuadraticBezierSegment.cs
- ReceiveDesigner.xaml.cs
- FontCacheUtil.cs
- DataColumnChangeEvent.cs
- FigureHelper.cs
- IteratorFilter.cs
- NativeMethods.cs
- XmlTypeAttribute.cs
- HashHelper.cs
- DataBindingCollectionConverter.cs
- SourceItem.cs
- Choices.cs
- StartFileNameEditor.cs
- ExtenderProvidedPropertyAttribute.cs
- HtmlGenericControl.cs
- Size3DConverter.cs
- ToolStripGripRenderEventArgs.cs
- InfoCardSymmetricCrypto.cs
- FormatControl.cs
- SyndicationDeserializer.cs
- Process.cs
- Win32.cs
- TdsEnums.cs
- SecurityKeyType.cs
- ArraySegment.cs
- ButtonField.cs
- MaskedTextProvider.cs
- BreakRecordTable.cs
- WebBodyFormatMessageProperty.cs
- Point4D.cs
- tooltip.cs
- Oid.cs
- MetadataCache.cs
- SqlUdtInfo.cs
- TextSearch.cs
- CodeAccessSecurityEngine.cs
- CqlParser.cs
- wmiprovider.cs
- ContentDisposition.cs
- RevocationPoint.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- SpecialFolderEnumConverter.cs
- DoubleAnimationBase.cs
- ReadOnlyPropertyMetadata.cs
- DocumentPageTextView.cs
- FixedHighlight.cs
- ServerTooBusyException.cs
- UseAttributeSetsAction.cs
- DesignTable.cs
- BezierSegment.cs
- Geometry.cs
- ConfigXmlAttribute.cs
- XmlStreamNodeWriter.cs
- MenuAutomationPeer.cs
- SmtpClient.cs
- PropertyMap.cs
- EntityClientCacheKey.cs
- ErrorHandler.cs
- DispatchOperation.cs
- BindableTemplateBuilder.cs
- RequestCacheEntry.cs
- DebugController.cs
- XmlArrayAttribute.cs
- VariableQuery.cs
- LogReserveAndAppendState.cs
- UserControl.cs
- DataColumnMapping.cs
- ButtonBase.cs
- DoubleAnimation.cs
- XomlDesignerLoader.cs
- Confirm.cs
- smtppermission.cs
- AutomationElement.cs
- DbConnectionPoolCounters.cs
- SystemException.cs
- RootBuilder.cs
- KernelTypeValidation.cs
- ConditionedDesigner.cs
- ChangeBlockUndoRecord.cs
- ProfilePropertyMetadata.cs
- SmtpReplyReaderFactory.cs
- DesignBindingValueUIHandler.cs
- DbConnectionPoolIdentity.cs
- SafeBitVector32.cs
- RequiredFieldValidator.cs
- BigInt.cs
- TitleStyle.cs
- SslStream.cs
- HandlerFactoryCache.cs
- ProcessProtocolHandler.cs
- PermissionSetTriple.cs
- BindingSourceDesigner.cs
- PatternMatcher.cs
- SemaphoreSlim.cs
- SpeechRecognitionEngine.cs