Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataBoundControl.cs
- XmlSerializerAssemblyAttribute.cs
- DataBindingList.cs
- ProviderConnectionPointCollection.cs
- MembershipSection.cs
- RequiredFieldValidator.cs
- DbXmlEnabledProviderManifest.cs
- RegexWorker.cs
- ComponentRenameEvent.cs
- PriorityBindingExpression.cs
- MTConfigUtil.cs
- DataGridViewHitTestInfo.cs
- ConfigDefinitionUpdates.cs
- ManagementClass.cs
- DtdParser.cs
- GenericTypeParameterBuilder.cs
- CommonDialog.cs
- ProbeDuplexAsyncResult.cs
- MethodToken.cs
- WpfWebRequestHelper.cs
- CodeIdentifier.cs
- ReflectionPermission.cs
- SizeConverter.cs
- EntityCommandDefinition.cs
- BinHexEncoder.cs
- WorkflowWebHostingModule.cs
- Utility.cs
- ShaperBuffers.cs
- LifetimeServices.cs
- _WinHttpWebProxyDataBuilder.cs
- ControlEvent.cs
- DbBuffer.cs
- Monitor.cs
- webclient.cs
- RecognizedWordUnit.cs
- Calendar.cs
- CmsInterop.cs
- Evaluator.cs
- UserControlAutomationPeer.cs
- DebuggerService.cs
- VirtualDirectoryMapping.cs
- ClientSettingsSection.cs
- StringAnimationBase.cs
- ListView.cs
- AnnotationComponentManager.cs
- HitTestResult.cs
- TreeViewBindingsEditorForm.cs
- RegistryHandle.cs
- WebPartConnectionsCancelVerb.cs
- EtwTrace.cs
- MetricEntry.cs
- ReflectionUtil.cs
- XmlBindingWorker.cs
- CurrentTimeZone.cs
- EventLogEntry.cs
- ValidationHelper.cs
- PerfCounters.cs
- InternalDuplexChannelListener.cs
- XmlTextReader.cs
- AssociationEndMember.cs
- ThemeDirectoryCompiler.cs
- SiteMapPath.cs
- XmlSchemaSimpleTypeUnion.cs
- TypedTableBase.cs
- InfoCardProofToken.cs
- TrustManager.cs
- WebCodeGenerator.cs
- Vector.cs
- TextTreeTextBlock.cs
- SecUtil.cs
- DragDeltaEventArgs.cs
- CreatingCookieEventArgs.cs
- TextBoxBase.cs
- DataContractSerializerOperationFormatter.cs
- TypeSystem.cs
- Baml6Assembly.cs
- CodeVariableReferenceExpression.cs
- UserValidatedEventArgs.cs
- RenderingEventArgs.cs
- FixedTextContainer.cs
- RoleManagerEventArgs.cs
- XmlSchemaInclude.cs
- ListDictionaryInternal.cs
- TextPatternIdentifiers.cs
- ScriptRegistrationManager.cs
- ProxyWebPartConnectionCollection.cs
- StateDesigner.Helpers.cs
- connectionpool.cs
- Trigger.cs
- SharedDp.cs
- CheckBox.cs
- TextEditorThreadLocalStore.cs
- BamlLocalizabilityResolver.cs
- ReliabilityContractAttribute.cs
- NetworkCredential.cs
- InArgument.cs
- ScriptingRoleServiceSection.cs
- ListViewUpdatedEventArgs.cs
- figurelengthconverter.cs
- SeekStoryboard.cs