Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- LinkLabelLinkClickedEvent.cs
- TextInfo.cs
- HotSpot.cs
- RenderDataDrawingContext.cs
- BitmapImage.cs
- followingquery.cs
- TouchDevice.cs
- GridItemCollection.cs
- PrePrepareMethodAttribute.cs
- DataMemberFieldEditor.cs
- QueryOptionExpression.cs
- Span.cs
- ThaiBuddhistCalendar.cs
- CustomBinding.cs
- DataGridViewTextBoxEditingControl.cs
- GradientBrush.cs
- BitVector32.cs
- VisualStyleTypesAndProperties.cs
- StylusButtonEventArgs.cs
- BindingsCollection.cs
- BaseContextMenu.cs
- ServiceContractAttribute.cs
- Comparer.cs
- AuthenticationService.cs
- FixedHyperLink.cs
- PublisherMembershipCondition.cs
- RecognizerInfo.cs
- SQLDateTimeStorage.cs
- ScrollItemProviderWrapper.cs
- QilLiteral.cs
- MethodCallConverter.cs
- HttpApplication.cs
- TypeSystem.cs
- EventNotify.cs
- ManipulationDevice.cs
- RuntimeConfig.cs
- DetailsViewRow.cs
- CustomServiceCredentials.cs
- DefaultParameterValueAttribute.cs
- DBSqlParserColumn.cs
- Table.cs
- ComplexObject.cs
- AnonymousIdentificationSection.cs
- SystemIcmpV6Statistics.cs
- SqlBulkCopy.cs
- ApplicationSettingsBase.cs
- ResourcePermissionBaseEntry.cs
- ObservableCollection.cs
- httpstaticobjectscollection.cs
- SelectionProviderWrapper.cs
- TypeConverterHelper.cs
- HwndMouseInputProvider.cs
- NumberSubstitution.cs
- TransportContext.cs
- EventMap.cs
- WindowsIdentity.cs
- EntityObject.cs
- BufferModesCollection.cs
- xamlnodes.cs
- RectAnimation.cs
- MetadataPropertyvalue.cs
- PropertyValueUIItem.cs
- Point3DKeyFrameCollection.cs
- SqlLiftIndependentRowExpressions.cs
- DocumentApplicationState.cs
- XmlSchemaInfo.cs
- HostSecurityManager.cs
- IResourceProvider.cs
- PngBitmapDecoder.cs
- ShutDownListener.cs
- RoutedEventArgs.cs
- InternalBufferManager.cs
- CoTaskMemHandle.cs
- OdbcError.cs
- CheckBoxFlatAdapter.cs
- BevelBitmapEffect.cs
- XmlMtomReader.cs
- RepeatInfo.cs
- _HTTPDateParse.cs
- DBConcurrencyException.cs
- DrawingContextDrawingContextWalker.cs
- SudsWriter.cs
- Point3DCollection.cs
- ThreadPool.cs
- GridViewHeaderRowPresenter.cs
- WindowsToolbarItemAsMenuItem.cs
- ProxySimple.cs
- FileDataSourceCache.cs
- XmlUnspecifiedAttribute.cs
- HwndSourceParameters.cs
- Executor.cs
- WindowsEditBox.cs
- DataSourceHelper.cs
- TemplatePagerField.cs
- GenericEnumConverter.cs
- xdrvalidator.cs
- ListBase.cs
- MetadataArtifactLoaderFile.cs
- ProbeMatchesApril2005.cs
- BaseParser.cs