Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- DependencyPropertyDescriptor.cs
- SafeEventHandle.cs
- XmlSchemaType.cs
- CheckBox.cs
- ToolStripSettings.cs
- DataGridViewCheckBoxColumn.cs
- messageonlyhwndwrapper.cs
- DocumentReferenceCollection.cs
- WebPartTracker.cs
- DataGridViewCellValidatingEventArgs.cs
- DocumentPageTextView.cs
- Link.cs
- SqlCommandBuilder.cs
- Int32Converter.cs
- SecurityRuntime.cs
- OpenTypeCommon.cs
- BaseServiceProvider.cs
- ScriptReference.cs
- XmlConvert.cs
- ItemCheckedEvent.cs
- DataTableReaderListener.cs
- InstanceDataCollectionCollection.cs
- dsa.cs
- PinnedBufferMemoryStream.cs
- AttributeUsageAttribute.cs
- OptimisticConcurrencyException.cs
- DateTimeConverter.cs
- Point4D.cs
- TextOutput.cs
- InitializerFacet.cs
- HandlerBase.cs
- DataSourceViewSchemaConverter.cs
- DataList.cs
- GraphicsState.cs
- DataRowView.cs
- XmlReaderSettings.cs
- SpellerError.cs
- ConfigXmlSignificantWhitespace.cs
- OdbcParameterCollection.cs
- TitleStyle.cs
- XmlILConstructAnalyzer.cs
- BooleanKeyFrameCollection.cs
- PictureBox.cs
- TriggerCollection.cs
- MatrixKeyFrameCollection.cs
- TempFiles.cs
- AnnotationDocumentPaginator.cs
- LabelTarget.cs
- BuildDependencySet.cs
- AllowedAudienceUriElementCollection.cs
- Win32.cs
- DocumentPage.cs
- SQLInt64.cs
- AssemblyBuilderData.cs
- SafeMILHandle.cs
- exports.cs
- ExpressionEditorAttribute.cs
- Psha1DerivedKeyGenerator.cs
- CodeValidator.cs
- TemplateBamlRecordReader.cs
- LineSegment.cs
- FilterRepeater.cs
- AsyncResult.cs
- DashStyle.cs
- DataObject.cs
- SQLConvert.cs
- GcSettings.cs
- DataBindingHandlerAttribute.cs
- ConditionalAttribute.cs
- ButtonField.cs
- FixedPage.cs
- MemberInfoSerializationHolder.cs
- SessionIDManager.cs
- ExtensionSimplifierMarkupObject.cs
- SafeLibraryHandle.cs
- cookie.cs
- SafeHandle.cs
- InArgument.cs
- SqlGatherConsumedAliases.cs
- BuildProvider.cs
- PageEventArgs.cs
- SqlProviderManifest.cs
- UpdatableGenericsFeature.cs
- ClientSettingsStore.cs
- DataTable.cs
- HwndSubclass.cs
- MimeTypePropertyAttribute.cs
- Converter.cs
- TypefaceMap.cs
- Table.cs
- GridViewItemAutomationPeer.cs
- ImportCatalogPart.cs
- HandledEventArgs.cs
- FrameSecurityDescriptor.cs
- AdornerDecorator.cs
- MobileCapabilities.cs
- DesignerRegionCollection.cs
- CodeCommentStatementCollection.cs
- Roles.cs
- DynamicValidatorEventArgs.cs