Code:
/ 4.0 / 4.0 / 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. //------------------------------------------------------------------------------ //// 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
- CommentEmitter.cs
- RightsManagementPermission.cs
- BasePattern.cs
- HttpWebResponse.cs
- OleServicesContext.cs
- StreamUpdate.cs
- ListViewGroupConverter.cs
- ListSourceHelper.cs
- bindurihelper.cs
- ValidatedControlConverter.cs
- HttpHeaderCollection.cs
- MediaPlayer.cs
- WCFModelStrings.Designer.cs
- ZipIOLocalFileBlock.cs
- DodSequenceMerge.cs
- NotImplementedException.cs
- MediaPlayerState.cs
- X500Name.cs
- CommonDialog.cs
- ScriptResourceHandler.cs
- AppDomainFactory.cs
- PublisherMembershipCondition.cs
- EmbeddedMailObjectsCollection.cs
- ArrayWithOffset.cs
- NativeMethods.cs
- NativeCompoundFileAPIs.cs
- WmlListAdapter.cs
- SqlClientPermission.cs
- TemplateBaseAction.cs
- Int16Converter.cs
- HtmlEmptyTagControlBuilder.cs
- Int32Converter.cs
- SqlCharStream.cs
- XmlCountingReader.cs
- SqlNotificationEventArgs.cs
- DataTableMappingCollection.cs
- ToolStripDropDownMenu.cs
- SwitchLevelAttribute.cs
- BitmapCache.cs
- CLSCompliantAttribute.cs
- UrlRoutingHandler.cs
- DescendentsWalker.cs
- CheckBoxField.cs
- SmiEventSink_DeferedProcessing.cs
- ControlDesigner.cs
- DbCommandDefinition.cs
- MenuItem.cs
- FixedSOMTableRow.cs
- SQLGuidStorage.cs
- MenuScrollingVisibilityConverter.cs
- FilterUserControlBase.cs
- NameValueSectionHandler.cs
- PeerToPeerException.cs
- SendMailErrorEventArgs.cs
- SystemNetHelpers.cs
- DataGridViewDesigner.cs
- XamlToRtfParser.cs
- PrintingPermission.cs
- MenuEventArgs.cs
- BinaryNode.cs
- HtmlMeta.cs
- SqlSelectStatement.cs
- GridViewColumnCollection.cs
- DataGridViewCellValidatingEventArgs.cs
- DtdParser.cs
- ToolStripTemplateNode.cs
- SiteMapNodeCollection.cs
- Context.cs
- WindowsRichEdit.cs
- UnsafeNativeMethods.cs
- Preprocessor.cs
- TraceSource.cs
- CopyAction.cs
- ValidatorCompatibilityHelper.cs
- XmlAutoDetectWriter.cs
- ValueTypeFixupInfo.cs
- SoapParser.cs
- DataGridColumnCollection.cs
- ObjectItemLoadingSessionData.cs
- ErrorWrapper.cs
- AnnouncementSendsAsyncResult.cs
- DefaultAsyncDataDispatcher.cs
- DtdParser.cs
- TraceListeners.cs
- EntitySqlQueryCacheEntry.cs
- GlyphElement.cs
- DateTimePicker.cs
- ToolboxItemImageConverter.cs
- wgx_exports.cs
- ConcurrentBag.cs
- RuntimeWrappedException.cs
- DefaultTraceListener.cs
- SqlDataSourceEnumerator.cs
- Literal.cs
- ScopelessEnumAttribute.cs
- DataGridItem.cs
- TextBoxAutoCompleteSourceConverter.cs
- DockingAttribute.cs
- TypeDescriptor.cs
- SimplePropertyEntry.cs