Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / WinForms / Managed / System / WinForms / PropertyGridInternal / ArrayElementGridEntry.cs / 1 / ArrayElementGridEntry.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.Windows.Forms.PropertyGridInternal { using System.Diagnostics; using System; using System.Collections; using System.Reflection; using System.ComponentModel; using System.ComponentModel.Design; using System.Windows.Forms; using System.Drawing; using Microsoft.Win32; using System.Globalization; internal class ArrayElementGridEntry : GridEntry { protected int index; public ArrayElementGridEntry(PropertyGrid ownerGrid, GridEntry peParent, int index) : base(ownerGrid, peParent) { this.index = index; this.SetFlag(FLAG_RENDER_READONLY, (peParent.Flags & FLAG_RENDER_READONLY) != 0 || peParent.ForceReadOnly); } public override GridItemType GridItemType { get { return GridItemType.ArrayValue; } } public override bool IsValueEditable { get{ return ParentGridEntry.IsValueEditable; } } public override string PropertyLabel { get { return "[" + index.ToString(CultureInfo.CurrentCulture) + "]"; } } public override Type PropertyType { get { return parentPE.PropertyType.GetElementType(); } } public override object PropertyValue { get { object owner = GetValueOwner(); Debug.Assert(owner is Array, "Owner is not array type!"); return((Array)owner).GetValue(index); } set { object owner = GetValueOwner(); Debug.Assert(owner is Array, "Owner is not array type!"); ((Array)owner).SetValue(value,index); } } public override bool ShouldRenderReadOnly { get { return ParentGridEntry.ShouldRenderReadOnly; } } /* ////// Checks if the value of the current item can be modified by the user. /// ////// True if the value can be modified /// public override bool CanSetPropertyValue() { return this.ParentGridEntry.CanSetPropertyValue(); } */ /* ////// Returns if it's an editable item. An example of a readonly /// editable item is a collection property -- the property itself /// can not be modified, but it's value (e.g. it's children) can, so /// we don't want to draw it as readonly. /// ////// True if the value associated with this property (e.g. it's children) can be modified even if it's readonly. /// public override bool CanSetReadOnlyPropertyValue() { return this.ParentGridEntry.CanSetReadOnlyPropertyValue(); }*/ } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.Windows.Forms.PropertyGridInternal { using System.Diagnostics; using System; using System.Collections; using System.Reflection; using System.ComponentModel; using System.ComponentModel.Design; using System.Windows.Forms; using System.Drawing; using Microsoft.Win32; using System.Globalization; internal class ArrayElementGridEntry : GridEntry { protected int index; public ArrayElementGridEntry(PropertyGrid ownerGrid, GridEntry peParent, int index) : base(ownerGrid, peParent) { this.index = index; this.SetFlag(FLAG_RENDER_READONLY, (peParent.Flags & FLAG_RENDER_READONLY) != 0 || peParent.ForceReadOnly); } public override GridItemType GridItemType { get { return GridItemType.ArrayValue; } } public override bool IsValueEditable { get{ return ParentGridEntry.IsValueEditable; } } public override string PropertyLabel { get { return "[" + index.ToString(CultureInfo.CurrentCulture) + "]"; } } public override Type PropertyType { get { return parentPE.PropertyType.GetElementType(); } } public override object PropertyValue { get { object owner = GetValueOwner(); Debug.Assert(owner is Array, "Owner is not array type!"); return((Array)owner).GetValue(index); } set { object owner = GetValueOwner(); Debug.Assert(owner is Array, "Owner is not array type!"); ((Array)owner).SetValue(value,index); } } public override bool ShouldRenderReadOnly { get { return ParentGridEntry.ShouldRenderReadOnly; } } /* ////// Checks if the value of the current item can be modified by the user. /// ////// True if the value can be modified /// public override bool CanSetPropertyValue() { return this.ParentGridEntry.CanSetPropertyValue(); } */ /* ////// Returns if it's an editable item. An example of a readonly /// editable item is a collection property -- the property itself /// can not be modified, but it's value (e.g. it's children) can, so /// we don't want to draw it as readonly. /// ////// True if the value associated with this property (e.g. it's children) can be modified even if it's readonly. /// public override bool CanSetReadOnlyPropertyValue() { return this.ParentGridEntry.CanSetReadOnlyPropertyValue(); }*/ } } // 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
- SafeUserTokenHandle.cs
- SoapDocumentServiceAttribute.cs
- URLString.cs
- RawStylusInput.cs
- unsafeIndexingFilterStream.cs
- Privilege.cs
- AxHost.cs
- MetadataItemEmitter.cs
- ObjectCache.cs
- InfoCardSchemas.cs
- EnumValidator.cs
- RootProfilePropertySettingsCollection.cs
- WinInetCache.cs
- RealProxy.cs
- ListControl.cs
- DynamicFilterExpression.cs
- ResourceDisplayNameAttribute.cs
- PeerNameRegistration.cs
- BamlLocalizableResource.cs
- Ops.cs
- CustomTrackingRecord.cs
- mediaeventargs.cs
- WarningException.cs
- arclist.cs
- Button.cs
- InsufficientMemoryException.cs
- ImpersonationContext.cs
- Figure.cs
- ConditionalWeakTable.cs
- DurableErrorHandler.cs
- XmlValidatingReader.cs
- ContainerUIElement3D.cs
- PhysicalFontFamily.cs
- Avt.cs
- TypeExtensionConverter.cs
- FileUtil.cs
- DateTimeOffset.cs
- KerberosSecurityTokenAuthenticator.cs
- DescendantQuery.cs
- DrawingContextDrawingContextWalker.cs
- WebMessageEncoderFactory.cs
- GenericNameHandler.cs
- DataGridViewAdvancedBorderStyle.cs
- DataSourceHelper.cs
- XmlTypeMapping.cs
- BindingNavigator.cs
- ArrangedElementCollection.cs
- PopupEventArgs.cs
- XPathScanner.cs
- ClientBuildManagerCallback.cs
- oledbmetadatacolumnnames.cs
- ChildTable.cs
- TextSchema.cs
- RelatedCurrencyManager.cs
- HtmlControl.cs
- ConnectionStringsExpressionBuilder.cs
- CookieHandler.cs
- RectangleF.cs
- TextSpan.cs
- TabRenderer.cs
- IndicShape.cs
- SrgsElementFactory.cs
- CodeDOMUtility.cs
- StreamSecurityUpgradeProvider.cs
- ServiceAuthorizationManager.cs
- SimpleHandlerBuildProvider.cs
- DbQueryCommandTree.cs
- XmlSchemaException.cs
- InputChannelAcceptor.cs
- ServiceModelExtensionElement.cs
- EntityType.cs
- BufferBuilder.cs
- TransformGroup.cs
- DeliveryRequirementsAttribute.cs
- objectquery_tresulttype.cs
- SettingsPropertyIsReadOnlyException.cs
- XmlSchemaSimpleType.cs
- QueryGeneratorBase.cs
- TextServicesPropertyRanges.cs
- ReachNamespaceInfo.cs
- ConnectionsZone.cs
- cache.cs
- ColorBlend.cs
- ManagedWndProcTracker.cs
- ThreadLocal.cs
- DrawingAttributeSerializer.cs
- HttpHandlerAction.cs
- FrameworkPropertyMetadata.cs
- MailDefinition.cs
- Pkcs7Recipient.cs
- NumberFunctions.cs
- OrderedDictionaryStateHelper.cs
- WebBrowserNavigatingEventHandler.cs
- MessageQueueInstaller.cs
- StructuralType.cs
- ChangeBlockUndoRecord.cs
- MultiDataTrigger.cs
- StyleReferenceConverter.cs
- ModuleElement.cs
- ISCIIEncoding.cs