Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / WinForms / Managed / System / WinForms / PropertyGridInternal / ArrayElementGridEntry.cs / 1305376 / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XmlSchemaSequence.cs
- AuthenticationException.cs
- MenuItemStyle.cs
- MultiView.cs
- EmissiveMaterial.cs
- Graph.cs
- SelectionListDesigner.cs
- DesignerDataSourceView.cs
- Hyperlink.cs
- MouseButton.cs
- RequestContextBase.cs
- ClassGenerator.cs
- XmlStreamStore.cs
- RadioButton.cs
- AddValidationError.cs
- XamlStyleSerializer.cs
- COM2ColorConverter.cs
- OleDbTransaction.cs
- FileVersionInfo.cs
- QilIterator.cs
- TriggerBase.cs
- SHA1Managed.cs
- ProxyWebPart.cs
- CanonicalFontFamilyReference.cs
- controlskin.cs
- HMACRIPEMD160.cs
- ChangeDirector.cs
- TreeView.cs
- ThicknessConverter.cs
- MailAddress.cs
- ListViewItemSelectionChangedEvent.cs
- HwndTarget.cs
- Win32Native.cs
- DefaultValueConverter.cs
- VectorCollectionValueSerializer.cs
- EdmRelationshipRoleAttribute.cs
- GlobalizationAssembly.cs
- PassportPrincipal.cs
- PropertyTab.cs
- CompilerScope.Storage.cs
- XPathScanner.cs
- Stylus.cs
- FlowDocument.cs
- ValidatorUtils.cs
- DependencyObjectValidator.cs
- PnrpPermission.cs
- KnownIds.cs
- XmlSchemaSimpleTypeRestriction.cs
- Operand.cs
- ACE.cs
- XmlSchemaType.cs
- ElementInit.cs
- ResourceAttributes.cs
- DateTimeFormatInfo.cs
- ZipIOFileItemStream.cs
- CodeMemberProperty.cs
- X509Chain.cs
- LogManagementAsyncResult.cs
- ListGeneralPage.cs
- WebControlToolBoxItem.cs
- TemplateControl.cs
- SoapAttributeAttribute.cs
- ModelItemCollection.cs
- QueryExecutionOption.cs
- ProgressBarBrushConverter.cs
- SectionVisual.cs
- ServiceProviders.cs
- FunctionCommandText.cs
- _BaseOverlappedAsyncResult.cs
- _DigestClient.cs
- OutputWindow.cs
- AsyncStreamReader.cs
- HostUtils.cs
- AutomationProperties.cs
- Style.cs
- EventManager.cs
- BaseAsyncResult.cs
- DefaultProxySection.cs
- _BaseOverlappedAsyncResult.cs
- ServiceModelConfigurationSection.cs
- XmlEventCache.cs
- EventKeyword.cs
- FileUpload.cs
- Assert.cs
- COM2PictureConverter.cs
- CryptoProvider.cs
- QilXmlWriter.cs
- AssemblyCache.cs
- ErrorStyle.cs
- NotifyParentPropertyAttribute.cs
- StaticContext.cs
- FontFamily.cs
- StrokeCollectionDefaultValueFactory.cs
- DateTimeConstantAttribute.cs
- SqlCrossApplyToCrossJoin.cs
- RepeaterItem.cs
- DetailsViewRow.cs
- ApplicationGesture.cs
- VirtualPathData.cs
- ButtonFieldBase.cs