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
- MaskedTextProvider.cs
- CryptoApi.cs
- TemplatedMailWebEventProvider.cs
- PtsContext.cs
- Transform3DGroup.cs
- HttpFileCollection.cs
- StandardRuntimeEnumValidator.cs
- PaintValueEventArgs.cs
- TabControlCancelEvent.cs
- GridViewEditEventArgs.cs
- XmlCodeExporter.cs
- DNS.cs
- PrimarySelectionGlyph.cs
- PackageProperties.cs
- NetStream.cs
- XmlSerializerSection.cs
- ReflectionServiceProvider.cs
- EventMap.cs
- OpenTypeCommon.cs
- ProgressBar.cs
- XPathArrayIterator.cs
- ScrollableControl.cs
- MailAddressParser.cs
- ModuleBuilder.cs
- ResourceCollectionInfo.cs
- DragEvent.cs
- Path.cs
- MissingMethodException.cs
- LineServices.cs
- Emitter.cs
- AnnotationDocumentPaginator.cs
- QueryContinueDragEvent.cs
- httpstaticobjectscollection.cs
- ChannelManager.cs
- ManagementQuery.cs
- ScrollPatternIdentifiers.cs
- RegexCaptureCollection.cs
- MenuItemCollection.cs
- WindowsToolbarItemAsMenuItem.cs
- SafeArrayRankMismatchException.cs
- XmlUTF8TextWriter.cs
- Claim.cs
- SystemIPGlobalProperties.cs
- DynamicPropertyHolder.cs
- CurrencyManager.cs
- XmlDictionary.cs
- MarginCollapsingState.cs
- EpmSyndicationContentSerializer.cs
- NavigationFailedEventArgs.cs
- KeyFrames.cs
- CompareValidator.cs
- EnumUnknown.cs
- CompressEmulationStream.cs
- JpegBitmapDecoder.cs
- Models.cs
- DataGridTable.cs
- Line.cs
- CodeSnippetCompileUnit.cs
- LocalizationComments.cs
- WorkflowRuntimeServiceElementCollection.cs
- FunctionMappingTranslator.cs
- SmtpReplyReaderFactory.cs
- StylusButton.cs
- LZCodec.cs
- ImageListDesigner.cs
- LinkDescriptor.cs
- MessageSmuggler.cs
- PrinterSettings.cs
- WasNotInstalledException.cs
- SqlConnectionManager.cs
- InvokeHandlers.cs
- ChameleonKey.cs
- PolicyException.cs
- DataRowChangeEvent.cs
- CommandHelper.cs
- PropertyTabAttribute.cs
- ServiceModelActivationSectionGroup.cs
- PagedDataSource.cs
- LocalizeDesigner.cs
- OleDbRowUpdatedEvent.cs
- CodeEventReferenceExpression.cs
- DataViewSettingCollection.cs
- AuthorizationRuleCollection.cs
- ComponentResourceKeyConverter.cs
- CodeTypeDeclaration.cs
- MarginCollapsingState.cs
- SimpleBitVector32.cs
- NetSectionGroup.cs
- ViewLoader.cs
- ContainerUtilities.cs
- MemberDomainMap.cs
- NameScope.cs
- MediaScriptCommandRoutedEventArgs.cs
- DataGridRelationshipRow.cs
- SoapServerMethod.cs
- FirstQueryOperator.cs
- ThaiBuddhistCalendar.cs
- SpAudioStreamWrapper.cs
- ImageButton.cs
- SponsorHelper.cs