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
- CollectionViewGroup.cs
- FunctionDetailsReader.cs
- HttpWriter.cs
- BinaryCommonClasses.cs
- TextEditorTyping.cs
- ConstraintEnumerator.cs
- FontNamesConverter.cs
- IList.cs
- XMLSyntaxException.cs
- DataGridRow.cs
- CharacterMetrics.cs
- HostingEnvironmentException.cs
- UnicastIPAddressInformationCollection.cs
- ToolBarButton.cs
- Matrix.cs
- ImageAutomationPeer.cs
- NativeMethods.cs
- JsonQNameDataContract.cs
- NullableIntMinMaxAggregationOperator.cs
- SuppressMessageAttribute.cs
- AttributeCallbackBuilder.cs
- BitmapPalettes.cs
- TextCompositionManager.cs
- QueryReaderSettings.cs
- SettingsBase.cs
- RenderDataDrawingContext.cs
- DemultiplexingDispatchMessageFormatter.cs
- AffineTransform3D.cs
- VectorKeyFrameCollection.cs
- SpinWait.cs
- XmlNamespaceDeclarationsAttribute.cs
- UITypeEditors.cs
- PageHandlerFactory.cs
- RSAPKCS1SignatureDeformatter.cs
- RC2.cs
- EntitySqlQueryCacheEntry.cs
- __FastResourceComparer.cs
- Operators.cs
- FilterElement.cs
- SyndicationSerializer.cs
- SqlCacheDependencySection.cs
- SettingsSection.cs
- PointCollectionConverter.cs
- Point3DIndependentAnimationStorage.cs
- Peer.cs
- SelectedDatesCollection.cs
- ServiceBuildProvider.cs
- DataGridViewHitTestInfo.cs
- EventLogPermissionEntryCollection.cs
- DeferredSelectedIndexReference.cs
- PrimitiveCodeDomSerializer.cs
- ClickablePoint.cs
- GetWinFXPath.cs
- SingleObjectCollection.cs
- PersistNameAttribute.cs
- DataContext.cs
- RectAnimation.cs
- RequestFactory.cs
- EventPrivateKey.cs
- OleDbParameter.cs
- DbDataReader.cs
- SHA256Managed.cs
- UInt32Converter.cs
- HostExecutionContextManager.cs
- StylusEventArgs.cs
- StatusBarItem.cs
- RepeaterItem.cs
- Operators.cs
- Control.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- figurelength.cs
- HtmlTitle.cs
- ExpressionCopier.cs
- Substitution.cs
- metrodevice.cs
- ContextConfiguration.cs
- DocumentPageViewAutomationPeer.cs
- BitmapEncoder.cs
- Schema.cs
- ArrayList.cs
- FileClassifier.cs
- ObjectStateManager.cs
- DiscoveryOperationContextExtension.cs
- HostedHttpRequestAsyncResult.cs
- BamlBinaryReader.cs
- SAPICategories.cs
- SQLMoneyStorage.cs
- SkinBuilder.cs
- MimeMapping.cs
- AccessViolationException.cs
- PublishLicense.cs
- TablePattern.cs
- MaskDesignerDialog.cs
- ModuleConfigurationInfo.cs
- ResourceWriter.cs
- PointAnimation.cs
- HttpsHostedTransportConfiguration.cs
- ScaleTransform3D.cs
- ScrollData.cs
- DateTime.cs