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
- MulticastDelegate.cs
- ProfileSection.cs
- ArglessEventHandlerProxy.cs
- AvTraceDetails.cs
- XPathPatternParser.cs
- XmlSiteMapProvider.cs
- WinFormsSecurity.cs
- SignedPkcs7.cs
- PropertyMetadata.cs
- ProgressBarAutomationPeer.cs
- GridViewEditEventArgs.cs
- SliderAutomationPeer.cs
- InvalidEnumArgumentException.cs
- arabicshape.cs
- RepeaterItemCollection.cs
- IisTraceListener.cs
- HighlightComponent.cs
- XmlMtomWriter.cs
- SmiMetaData.cs
- SqlNamer.cs
- HtmlInputText.cs
- OneOfTypeConst.cs
- DataTemplateKey.cs
- HandledEventArgs.cs
- EventLevel.cs
- TextDecorationLocationValidation.cs
- TreeNodeMouseHoverEvent.cs
- Select.cs
- RedirectionProxy.cs
- KeyGestureConverter.cs
- SoundPlayerAction.cs
- CollectionViewProxy.cs
- WebPartConnectionsCloseVerb.cs
- ExpressionReplacer.cs
- TreeViewAutomationPeer.cs
- CharacterString.cs
- assemblycache.cs
- TextServicesContext.cs
- FixedDocument.cs
- SimpleWorkerRequest.cs
- LinkConverter.cs
- followingsibling.cs
- DelegatedStream.cs
- LinqDataSourceDeleteEventArgs.cs
- PageHandlerFactory.cs
- Container.cs
- _AutoWebProxyScriptWrapper.cs
- RadioButtonPopupAdapter.cs
- PropertyManager.cs
- DataColumnSelectionConverter.cs
- DoubleUtil.cs
- DocumentXPathNavigator.cs
- MetafileHeader.cs
- TextBox.cs
- AnonymousIdentificationModule.cs
- KeyPressEvent.cs
- EncoderBestFitFallback.cs
- Misc.cs
- UnaryOperationBinder.cs
- BCLDebug.cs
- DbParameterHelper.cs
- StylusPointPropertyInfo.cs
- DeleteStoreRequest.cs
- DbProviderFactory.cs
- SqlDataSourceView.cs
- XmlComment.cs
- DragStartedEventArgs.cs
- Stroke.cs
- VirtualizingPanel.cs
- BindingMemberInfo.cs
- XmlSignificantWhitespace.cs
- CompositeTypefaceMetrics.cs
- QilStrConcatenator.cs
- ServicePoint.cs
- sqlpipe.cs
- EndpointInstanceProvider.cs
- WebPartCancelEventArgs.cs
- SingleKeyFrameCollection.cs
- TargetException.cs
- XPathItem.cs
- _PooledStream.cs
- RemoteX509Token.cs
- ToolStripItemImageRenderEventArgs.cs
- IPCCacheManager.cs
- DataRecordInfo.cs
- RedBlackList.cs
- MarkupExtensionSerializer.cs
- WindowInteropHelper.cs
- DataServiceConfiguration.cs
- LingerOption.cs
- _RegBlobWebProxyDataBuilder.cs
- SQLDecimal.cs
- Command.cs
- WebBrowserSiteBase.cs
- EditBehavior.cs
- sqlcontext.cs
- ToolTip.cs
- SqlUserDefinedTypeAttribute.cs
- Int32Rect.cs
- XmlSerializationReader.cs