Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- DataColumnMappingCollection.cs
- SubstitutionDesigner.cs
- CodeTypeOfExpression.cs
- MetaChildrenColumn.cs
- ImageField.cs
- CreateUserWizard.cs
- SelectionItemProviderWrapper.cs
- PrefixHandle.cs
- IItemProperties.cs
- PropertyIdentifier.cs
- IconEditor.cs
- SectionRecord.cs
- AnnotationMap.cs
- __Error.cs
- DrawingVisualDrawingContext.cs
- XamlReader.cs
- SynchronizedMessageSource.cs
- ServiceHandle.cs
- ButtonStandardAdapter.cs
- ServiceModelStringsVersion1.cs
- XhtmlConformanceSection.cs
- ApplicationManager.cs
- ObjectReferenceStack.cs
- xmlglyphRunInfo.cs
- WebPartsSection.cs
- Hashtable.cs
- IconEditor.cs
- Compiler.cs
- CharStorage.cs
- ByValueEqualityComparer.cs
- EntityDataSourceUtil.cs
- AddInControllerImpl.cs
- ViewValidator.cs
- ListViewUpdatedEventArgs.cs
- DbProviderSpecificTypePropertyAttribute.cs
- BindingListCollectionView.cs
- StorageEntitySetMapping.cs
- AliasExpr.cs
- CompilationUnit.cs
- DataBindingExpressionBuilder.cs
- HtmlInputControl.cs
- CodePageEncoding.cs
- ObjectItemCachedAssemblyLoader.cs
- XmlDataSourceView.cs
- invalidudtexception.cs
- XmlSerializerSection.cs
- ActivityDesigner.cs
- WebPartConnection.cs
- TextEditorContextMenu.cs
- SoundPlayer.cs
- SemaphoreSecurity.cs
- MinimizableAttributeTypeConverter.cs
- EntityClassGenerator.cs
- SerialErrors.cs
- CalendarButtonAutomationPeer.cs
- x509store.cs
- ADMembershipProvider.cs
- OleDbDataAdapter.cs
- AssemblyCache.cs
- TypeUnloadedException.cs
- WebPartConnectionsConnectVerb.cs
- DesignerView.xaml.cs
- EventProviderBase.cs
- TabPage.cs
- SafeCryptoHandles.cs
- OracleColumn.cs
- DataObjectFieldAttribute.cs
- XmlSchemas.cs
- MailHeaderInfo.cs
- ValidationEventArgs.cs
- ViewBox.cs
- AccessViolationException.cs
- ContentPlaceHolder.cs
- XmlWhitespace.cs
- _LocalDataStore.cs
- DependencyProperty.cs
- SqlRowUpdatingEvent.cs
- Delay.cs
- CodeEventReferenceExpression.cs
- TableDetailsRow.cs
- DecimalAnimationUsingKeyFrames.cs
- MatrixTransform3D.cs
- StickyNoteAnnotations.cs
- ArgumentOutOfRangeException.cs
- SslStream.cs
- SelectionChangedEventArgs.cs
- ActiveXSite.cs
- EventLevel.cs
- OleDbError.cs
- Image.cs
- XmlText.cs
- Identity.cs
- HwndSourceKeyboardInputSite.cs
- FunctionDetailsReader.cs
- DirectoryNotFoundException.cs
- MessageQueueConverter.cs
- InputElement.cs
- DrawingDrawingContext.cs
- XmlTextReaderImplHelpers.cs
- ShaderRenderModeValidation.cs