Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CFGGrammar.cs
- ExtendedPropertyInfo.cs
- _Events.cs
- ObjectSet.cs
- TCPClient.cs
- FormsAuthenticationUserCollection.cs
- DictionaryEditChange.cs
- Rule.cs
- XmlMemberMapping.cs
- _UriSyntax.cs
- ApplyHostConfigurationBehavior.cs
- GenericRootAutomationPeer.cs
- TreeBuilderBamlTranslator.cs
- TemplateApplicationHelper.cs
- MatchAttribute.cs
- XmlSiteMapProvider.cs
- CommonDialog.cs
- TextPointer.cs
- XamlFilter.cs
- DurableTimerExtension.cs
- HttpStaticObjectsCollectionWrapper.cs
- DataBindingCollection.cs
- SqlUserDefinedAggregateAttribute.cs
- XPathMultyIterator.cs
- InkCanvas.cs
- ConnectionStringsExpressionEditor.cs
- ImageMapEventArgs.cs
- NumberSubstitution.cs
- GridProviderWrapper.cs
- AliasExpr.cs
- Metafile.cs
- Control.cs
- WinFormsSecurity.cs
- sqlser.cs
- SynchronizationContextHelper.cs
- SendMailErrorEventArgs.cs
- FigureParagraph.cs
- SignatureToken.cs
- ControlBuilderAttribute.cs
- CodeAccessPermission.cs
- WebEventTraceProvider.cs
- SystemThemeKey.cs
- DataGridViewAccessibleObject.cs
- EntityParameter.cs
- ObjectDataSourceFilteringEventArgs.cs
- GridItemProviderWrapper.cs
- HttpClientCertificate.cs
- RTLAwareMessageBox.cs
- AssertFilter.cs
- SystemEvents.cs
- TextParagraphView.cs
- _HelperAsyncResults.cs
- PasswordDeriveBytes.cs
- MaterialGroup.cs
- LineUtil.cs
- ObsoleteAttribute.cs
- KeyManager.cs
- CodeThrowExceptionStatement.cs
- CoTaskMemUnicodeSafeHandle.cs
- ColorConvertedBitmap.cs
- ExpandCollapseProviderWrapper.cs
- DataTemplate.cs
- CustomErrorsSection.cs
- SqlExpander.cs
- ObservableCollection.cs
- ConcurrentDictionary.cs
- LoggedException.cs
- RawKeyboardInputReport.cs
- EntityDataSourceContainerNameItem.cs
- EntityViewGenerator.cs
- Tuple.cs
- ValidationRuleCollection.cs
- SplineKeyFrames.cs
- TextDpi.cs
- BinaryFormatterWriter.cs
- PreviewPageInfo.cs
- QueryAsyncResult.cs
- Stack.cs
- WsdlBuildProvider.cs
- XsdBuildProvider.cs
- DBSchemaRow.cs
- HtmlWindow.cs
- NumberFormatter.cs
- WebPartEditorApplyVerb.cs
- NodeInfo.cs
- QilDataSource.cs
- WorkflowLayouts.cs
- AttributeData.cs
- WebBrowserHelper.cs
- SchemaElementLookUpTable.cs
- RequiredAttributeAttribute.cs
- uribuilder.cs
- FileUtil.cs
- DomainConstraint.cs
- BrowsableAttribute.cs
- UInt64Converter.cs
- TerminatorSinks.cs
- TypeConverterHelper.cs
- ResourceDictionaryCollection.cs
- PermissionSetTriple.cs