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
- DataGridViewButtonCell.cs
- SHA384.cs
- MetadataUtilsSmi.cs
- Parser.cs
- HtmlFormParameterReader.cs
- SharedPerformanceCounter.cs
- CallbackHandler.cs
- XmlChoiceIdentifierAttribute.cs
- DispatcherExceptionFilterEventArgs.cs
- Calendar.cs
- BinaryExpression.cs
- cache.cs
- WmlFormAdapter.cs
- PrivilegedConfigurationManager.cs
- ZoomPercentageConverter.cs
- DecoderBestFitFallback.cs
- AttachmentCollection.cs
- CompilerResults.cs
- StronglyTypedResourceBuilder.cs
- HasCopySemanticsAttribute.cs
- PropertyValueUIItem.cs
- InputLangChangeRequestEvent.cs
- ByteStorage.cs
- DataBoundControl.cs
- FileLoadException.cs
- CurrencyWrapper.cs
- TextParaClient.cs
- AutomationElement.cs
- ProfilePropertyNameValidator.cs
- TextCompositionEventArgs.cs
- SessionStateUtil.cs
- ServiceOperationDetailViewControl.cs
- EditableRegion.cs
- OptionalRstParameters.cs
- SettingsPropertyNotFoundException.cs
- UnsafeNativeMethods.cs
- ImageMapEventArgs.cs
- SelectionEditor.cs
- PointF.cs
- invalidudtexception.cs
- Buffer.cs
- ApplicationManager.cs
- Math.cs
- RegionInfo.cs
- VisualProxy.cs
- XamlFrame.cs
- ArraySortHelper.cs
- SigningDialog.cs
- DependencyPropertyHelper.cs
- ActionItem.cs
- SkewTransform.cs
- DataFormats.cs
- RealProxy.cs
- MobileResource.cs
- SessionEndingCancelEventArgs.cs
- DataGridViewRowsRemovedEventArgs.cs
- ApplicationBuildProvider.cs
- Authorization.cs
- DoubleAnimationBase.cs
- TransformGroup.cs
- ImageDrawing.cs
- XmlDataImplementation.cs
- DataGridViewDataErrorEventArgs.cs
- AffineTransform3D.cs
- RangeBase.cs
- WebPartManagerInternals.cs
- XmlObjectSerializerWriteContextComplex.cs
- UriWriter.cs
- FilterEventArgs.cs
- DataSourceXmlAttributeAttribute.cs
- OLEDB_Enum.cs
- ValueUtilsSmi.cs
- SecurityTokenResolver.cs
- HandledEventArgs.cs
- BitVec.cs
- Console.cs
- DateTimeAutomationPeer.cs
- SimpleWorkerRequest.cs
- XmlEncoding.cs
- BamlLocalizableResource.cs
- PropertyCondition.cs
- NativeMethods.cs
- LogWriteRestartAreaAsyncResult.cs
- AmbientProperties.cs
- ProviderIncompatibleException.cs
- AppDomainAttributes.cs
- CacheSection.cs
- BamlMapTable.cs
- AdapterDictionary.cs
- TraceFilter.cs
- TableLayoutCellPaintEventArgs.cs
- Helpers.cs
- DataDocumentXPathNavigator.cs
- DeflateEmulationStream.cs
- BitmapPalette.cs
- NegatedConstant.cs
- UiaCoreProviderApi.cs
- CTreeGenerator.cs
- StringToken.cs
- DataObject.cs