Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- DataRelationCollection.cs
- UnmanagedMemoryStream.cs
- CapabilitiesAssignment.cs
- FtpRequestCacheValidator.cs
- ProcessHostServerConfig.cs
- SetState.cs
- NativeMethodsOther.cs
- CaseKeyBox.xaml.cs
- WebBaseEventKeyComparer.cs
- Error.cs
- ping.cs
- ColorTransformHelper.cs
- PeerValidationBehavior.cs
- VirtualizedItemProviderWrapper.cs
- Cursors.cs
- LocalServiceSecuritySettings.cs
- PkcsMisc.cs
- String.cs
- Hyperlink.cs
- BuildDependencySet.cs
- AuthenticatedStream.cs
- StoreContentChangedEventArgs.cs
- StopStoryboard.cs
- ObjectStateEntryDbDataRecord.cs
- OdbcConnectionOpen.cs
- ObjectDataSourceMethodEditor.cs
- MobileCategoryAttribute.cs
- MissingMethodException.cs
- SyndicationElementExtension.cs
- Span.cs
- InstanceView.cs
- CompositeClientFormatter.cs
- RepeaterCommandEventArgs.cs
- GridViewDeleteEventArgs.cs
- DocumentViewer.cs
- SafeCertificateStore.cs
- Mouse.cs
- TrackingParameters.cs
- DbDataRecord.cs
- XmlQueryStaticData.cs
- DataIdProcessor.cs
- UInt64.cs
- StorageFunctionMapping.cs
- UrlRoutingModule.cs
- GridViewColumnCollection.cs
- DbConvert.cs
- HttpFileCollection.cs
- AtomServiceDocumentSerializer.cs
- Partitioner.cs
- SmiRecordBuffer.cs
- IndexedString.cs
- TransformerInfoCollection.cs
- PropertyGridCommands.cs
- validationstate.cs
- WeakRefEnumerator.cs
- InstanceOwnerQueryResult.cs
- DataSourceCacheDurationConverter.cs
- ProcessHostConfigUtils.cs
- DigitalSignature.cs
- FormsAuthenticationUser.cs
- SynchronizedDispatch.cs
- WinInet.cs
- ProbeRequestResponseAsyncResult.cs
- OrderedEnumerableRowCollection.cs
- DataGridViewComponentPropertyGridSite.cs
- Logging.cs
- HMACSHA256.cs
- ListBoxItemAutomationPeer.cs
- ListCollectionView.cs
- SiteMapHierarchicalDataSourceView.cs
- FigureParagraph.cs
- PageRequestManager.cs
- GlobalizationAssembly.cs
- PasswordDeriveBytes.cs
- DataRecordInfo.cs
- InitiatorSessionSymmetricTransportSecurityProtocol.cs
- Peer.cs
- Rect.cs
- NavigationPropertyEmitter.cs
- PagesSection.cs
- IgnoreSectionHandler.cs
- InputLanguageProfileNotifySink.cs
- Menu.cs
- InvokeBase.cs
- TrackingServices.cs
- MaterialGroup.cs
- Privilege.cs
- SimpleTextLine.cs
- AsyncDataRequest.cs
- FacetDescription.cs
- DesignerListAdapter.cs
- MessageContractAttribute.cs
- Paragraph.cs
- EdmRelationshipRoleAttribute.cs
- XmlObjectSerializer.cs
- X509IssuerSerialKeyIdentifierClause.cs
- XamlFilter.cs
- InputBinder.cs
- Quaternion.cs
- CodeCommentStatement.cs