Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- CallbackValidatorAttribute.cs
- CodeTypeOfExpression.cs
- SqlXml.cs
- ProfilePropertySettingsCollection.cs
- PathStreamGeometryContext.cs
- PerspectiveCamera.cs
- CheckBox.cs
- ZipIOLocalFileBlock.cs
- XmlnsDictionary.cs
- TypeInitializationException.cs
- TextSegment.cs
- Quaternion.cs
- WriteFileContext.cs
- ActiveXContainer.cs
- FlowDocumentReaderAutomationPeer.cs
- EntityDataSourceStatementEditorForm.cs
- GlobalAllocSafeHandle.cs
- ListSourceHelper.cs
- SecureUICommand.cs
- ToolStripContentPanel.cs
- StorageComplexTypeMapping.cs
- SingleTagSectionHandler.cs
- ResolveNameEventArgs.cs
- EventlogProvider.cs
- LambdaCompiler.Statements.cs
- PackageStore.cs
- SelectionEditor.cs
- tooltip.cs
- ByteAnimationUsingKeyFrames.cs
- DataPagerFieldCommandEventArgs.cs
- MatrixAnimationUsingKeyFrames.cs
- DocumentOrderQuery.cs
- Button.cs
- WebRequestModulesSection.cs
- PersonalizableTypeEntry.cs
- SimpleApplicationHost.cs
- PagesChangedEventArgs.cs
- SByteStorage.cs
- ContextQuery.cs
- LinkedResource.cs
- SafeNativeMethods.cs
- WebPartCatalogCloseVerb.cs
- PersonalizationAdministration.cs
- WinFormsUtils.cs
- KeyFrames.cs
- PageCodeDomTreeGenerator.cs
- XmlUnspecifiedAttribute.cs
- ConvertBinder.cs
- SqlRemoveConstantOrderBy.cs
- SoapIgnoreAttribute.cs
- CompositeCollection.cs
- ReachVisualSerializerAsync.cs
- SamlAudienceRestrictionCondition.cs
- CommentEmitter.cs
- SafeNativeHandle.cs
- RadialGradientBrush.cs
- AVElementHelper.cs
- OleStrCAMarshaler.cs
- TypeExtensionConverter.cs
- ToolStripPanelCell.cs
- LockCookie.cs
- ToolboxComponentsCreatingEventArgs.cs
- FunctionMappingTranslator.cs
- DataProviderNameConverter.cs
- Pool.cs
- Point3DCollection.cs
- TextServicesCompartmentContext.cs
- MimeXmlImporter.cs
- TimelineClockCollection.cs
- TemplateBamlTreeBuilder.cs
- BoundPropertyEntry.cs
- PropertyCollection.cs
- XmlSchemaProviderAttribute.cs
- ElementMarkupObject.cs
- HttpApplicationFactory.cs
- TCPClient.cs
- DataGridViewColumnHeaderCell.cs
- TableLayoutPanelCellPosition.cs
- Point3DCollection.cs
- CodeMemberField.cs
- ViewStateModeByIdAttribute.cs
- MultipartIdentifier.cs
- IdentityReference.cs
- DataGridViewCellStyleChangedEventArgs.cs
- ContentPosition.cs
- Completion.cs
- EdmType.cs
- ValidationEventArgs.cs
- DBDataPermission.cs
- ControlAdapter.cs
- WebPartsSection.cs
- WebPartDisplayModeCollection.cs
- basenumberconverter.cs
- InfocardExtendedInformationCollection.cs
- ObjectItemCollection.cs
- TemplateManager.cs
- Sequence.cs
- FileVersionInfo.cs
- EnumBuilder.cs
- EraserBehavior.cs