Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / WinForms / Managed / System / WinForms / Design / PropertyTab.cs / 1 / 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; ////// /// [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 { 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. // Copyright (c) Microsoft Corporation. All rights reserved.Gets the properties of the specified component... ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DelegatingConfigHost.cs
- PartialCachingControl.cs
- SQLBinary.cs
- ComponentDispatcherThread.cs
- AnimatedTypeHelpers.cs
- Image.cs
- ViewStateException.cs
- ISO2022Encoding.cs
- OperationResponse.cs
- NumberSubstitution.cs
- RequiredAttributeAttribute.cs
- ellipse.cs
- elementinformation.cs
- xamlnodes.cs
- ErrorHandler.cs
- OleDbSchemaGuid.cs
- FileDataSourceCache.cs
- DelegateBodyWriter.cs
- ColumnMapTranslator.cs
- DriveInfo.cs
- MLangCodePageEncoding.cs
- PartialArray.cs
- PreviewKeyDownEventArgs.cs
- TypedTableHandler.cs
- XmlSchemas.cs
- SplitContainer.cs
- AssemblyResourceLoader.cs
- GradientBrush.cs
- QuaternionAnimation.cs
- bindurihelper.cs
- GetLedgerEntryForRecipientRequest.cs
- DropDownList.cs
- MessageUtil.cs
- Part.cs
- Condition.cs
- PersonalizationDictionary.cs
- DbDataSourceEnumerator.cs
- DateTimeAutomationPeer.cs
- SizeConverter.cs
- WebScriptClientGenerator.cs
- ThreadAbortException.cs
- MessageDecoder.cs
- ExtensibleClassFactory.cs
- DataServiceHost.cs
- TextLineBreak.cs
- DataGridColumn.cs
- MsdtcWrapper.cs
- ISCIIEncoding.cs
- HttpWebResponse.cs
- WebBrowser.cs
- XmlQueryOutput.cs
- BasicHttpMessageSecurity.cs
- SplitterPanel.cs
- SuppressMergeCheckAttribute.cs
- XmlSerializer.cs
- BooleanFacetDescriptionElement.cs
- StaticTextPointer.cs
- DataTrigger.cs
- GlobalizationAssembly.cs
- EdmEntityTypeAttribute.cs
- SafeCryptHandles.cs
- TextTrailingCharacterEllipsis.cs
- LostFocusEventManager.cs
- StatusBarPanel.cs
- ZipIOModeEnforcingStream.cs
- TextControlDesigner.cs
- VisualCollection.cs
- DataRowComparer.cs
- PageRequestManager.cs
- PageRanges.cs
- PreDigestedSignedInfo.cs
- RegexGroup.cs
- RemoteHelper.cs
- complextypematerializer.cs
- WebPartConnectionsDisconnectVerb.cs
- IndexedWhereQueryOperator.cs
- VideoDrawing.cs
- SessionPageStateSection.cs
- CaseInsensitiveHashCodeProvider.cs
- ApplicationManager.cs
- documentsequencetextcontainer.cs
- SchemaNames.cs
- ScopelessEnumAttribute.cs
- SizeKeyFrameCollection.cs
- EventDescriptorCollection.cs
- DetailsViewPagerRow.cs
- Deflater.cs
- OleDbErrorCollection.cs
- MinMaxParagraphWidth.cs
- PolicyLevel.cs
- SchemaAttDef.cs
- TransactionBridge.cs
- CommonDialog.cs
- FlowDocumentReader.cs
- BypassElementCollection.cs
- XNameConverter.cs
- PropertyValueChangedEvent.cs
- StringUtil.cs
- WorkflowRuntimeSection.cs
- Evidence.cs