Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / WinForms / Managed / System / WinForms / PropertyManager.cs / 1 / PropertyManager.cs
namespace System.Windows.Forms { using System; using System.Windows.Forms; using System.Diagnostics.CodeAnalysis; using System.ComponentModel; using System.Collections; ////// /// public class PropertyManager : BindingManagerBase { // PropertyManager class // private object dataSource; private string propName; private PropertyDescriptor propInfo; private bool bound; ///[To be supplied.] ////// /// public override Object Current { get { return this.dataSource; } } private void PropertyChanged(object sender, EventArgs ea) { EndCurrentEdit(); OnCurrentChanged(EventArgs.Empty); } internal override void SetDataSource(Object dataSource) { if (this.dataSource != null && !String.IsNullOrEmpty(this.propName)) { propInfo.RemoveValueChanged(this.dataSource, new EventHandler(PropertyChanged)); propInfo = null; } this.dataSource = dataSource; if (this.dataSource != null && !String.IsNullOrEmpty(this.propName)) { propInfo = TypeDescriptor.GetProperties(dataSource).Find(propName, true); if (propInfo == null) throw new ArgumentException(SR.GetString(SR.PropertyManagerPropDoesNotExist, propName, dataSource.ToString())); propInfo.AddValueChanged(dataSource, new EventHandler(PropertyChanged)); } } ///[To be supplied.] ////// /// public PropertyManager() {} [ SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors") // If the constructor does not set the dataSource // it would be a breaking change. ] internal PropertyManager(Object dataSource) : base(dataSource){} [ SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors") // If the constructor does not set the dataSource // it would be a breaking change. ] internal PropertyManager(Object dataSource, string propName) : base() { this.propName = propName; this.SetDataSource(dataSource); } internal override PropertyDescriptorCollection GetItemProperties(PropertyDescriptor[] listAccessors) { return ListBindingHelper.GetListItemProperties(dataSource, listAccessors); } internal override Type BindType { get { return dataSource.GetType(); } } internal override String GetListName() { return TypeDescriptor.GetClassName(dataSource) + "." + propName; } ///[To be supplied.] ///public override void SuspendBinding() { EndCurrentEdit(); if (bound) { try { bound = false; UpdateIsBinding(); } catch { bound = true; UpdateIsBinding(); throw; } } } /// public override void ResumeBinding() { OnCurrentChanged(new EventArgs()); if (!bound) { try { bound = true; UpdateIsBinding(); } catch { bound = false; UpdateIsBinding(); throw; } } } /// /// /// protected internal override String GetListName(ArrayList listAccessors) { return ""; } ///[To be supplied.] ////// /// public override void CancelCurrentEdit() { IEditableObject obj = this.Current as IEditableObject; if (obj != null) obj.CancelEdit(); PushData(); } ///[To be supplied.] ////// /// public override void EndCurrentEdit() { bool success; PullData(out success); if (success) { IEditableObject obj = this.Current as IEditableObject; if (obj != null) obj.EndEdit(); } } ///[To be supplied.] ////// /// protected override void UpdateIsBinding() { for (int i = 0; i < this.Bindings.Count; i++) this.Bindings[i].UpdateIsBinding(); } ///[To be supplied.] ////// /// internal protected override void OnCurrentChanged(EventArgs ea) { PushData(); if (this.onCurrentChangedHandler != null) this.onCurrentChangedHandler(this, ea); if (this.onCurrentItemChangedHandler != null) this.onCurrentItemChangedHandler(this, ea); } ///[To be supplied.] ////// /// internal protected override void OnCurrentItemChanged(EventArgs ea) { PushData(); if (this.onCurrentItemChangedHandler != null) this.onCurrentItemChangedHandler(this, ea); } internal override object DataSource { get { return this.dataSource; } } internal override bool IsBinding { get { return (dataSource != null); } } // no op on the propertyManager ///[To be supplied.] ////// /// public override int Position { get { return 0; } set { } } ///[To be supplied.] ///public override int Count { get { return 1; } } // no-op on the propertyManager /// /// /// public override void AddNew() { throw new NotSupportedException(SR.GetString(SR.DataBindingAddNewNotSupportedOnPropertyManager)); } // no-op on the propertyManager ///[To be supplied.] ////// /// public override void RemoveAt(int index) { throw new NotSupportedException(SR.GetString(SR.DataBindingRemoveAtNotSupportedOnPropertyManager)); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. namespace System.Windows.Forms { using System; using System.Windows.Forms; using System.Diagnostics.CodeAnalysis; using System.ComponentModel; using System.Collections; ///[To be supplied.] ////// /// public class PropertyManager : BindingManagerBase { // PropertyManager class // private object dataSource; private string propName; private PropertyDescriptor propInfo; private bool bound; ///[To be supplied.] ////// /// public override Object Current { get { return this.dataSource; } } private void PropertyChanged(object sender, EventArgs ea) { EndCurrentEdit(); OnCurrentChanged(EventArgs.Empty); } internal override void SetDataSource(Object dataSource) { if (this.dataSource != null && !String.IsNullOrEmpty(this.propName)) { propInfo.RemoveValueChanged(this.dataSource, new EventHandler(PropertyChanged)); propInfo = null; } this.dataSource = dataSource; if (this.dataSource != null && !String.IsNullOrEmpty(this.propName)) { propInfo = TypeDescriptor.GetProperties(dataSource).Find(propName, true); if (propInfo == null) throw new ArgumentException(SR.GetString(SR.PropertyManagerPropDoesNotExist, propName, dataSource.ToString())); propInfo.AddValueChanged(dataSource, new EventHandler(PropertyChanged)); } } ///[To be supplied.] ////// /// public PropertyManager() {} [ SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors") // If the constructor does not set the dataSource // it would be a breaking change. ] internal PropertyManager(Object dataSource) : base(dataSource){} [ SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors") // If the constructor does not set the dataSource // it would be a breaking change. ] internal PropertyManager(Object dataSource, string propName) : base() { this.propName = propName; this.SetDataSource(dataSource); } internal override PropertyDescriptorCollection GetItemProperties(PropertyDescriptor[] listAccessors) { return ListBindingHelper.GetListItemProperties(dataSource, listAccessors); } internal override Type BindType { get { return dataSource.GetType(); } } internal override String GetListName() { return TypeDescriptor.GetClassName(dataSource) + "." + propName; } ///[To be supplied.] ///public override void SuspendBinding() { EndCurrentEdit(); if (bound) { try { bound = false; UpdateIsBinding(); } catch { bound = true; UpdateIsBinding(); throw; } } } /// public override void ResumeBinding() { OnCurrentChanged(new EventArgs()); if (!bound) { try { bound = true; UpdateIsBinding(); } catch { bound = false; UpdateIsBinding(); throw; } } } /// /// /// protected internal override String GetListName(ArrayList listAccessors) { return ""; } ///[To be supplied.] ////// /// public override void CancelCurrentEdit() { IEditableObject obj = this.Current as IEditableObject; if (obj != null) obj.CancelEdit(); PushData(); } ///[To be supplied.] ////// /// public override void EndCurrentEdit() { bool success; PullData(out success); if (success) { IEditableObject obj = this.Current as IEditableObject; if (obj != null) obj.EndEdit(); } } ///[To be supplied.] ////// /// protected override void UpdateIsBinding() { for (int i = 0; i < this.Bindings.Count; i++) this.Bindings[i].UpdateIsBinding(); } ///[To be supplied.] ////// /// internal protected override void OnCurrentChanged(EventArgs ea) { PushData(); if (this.onCurrentChangedHandler != null) this.onCurrentChangedHandler(this, ea); if (this.onCurrentItemChangedHandler != null) this.onCurrentItemChangedHandler(this, ea); } ///[To be supplied.] ////// /// internal protected override void OnCurrentItemChanged(EventArgs ea) { PushData(); if (this.onCurrentItemChangedHandler != null) this.onCurrentItemChangedHandler(this, ea); } internal override object DataSource { get { return this.dataSource; } } internal override bool IsBinding { get { return (dataSource != null); } } // no op on the propertyManager ///[To be supplied.] ////// /// public override int Position { get { return 0; } set { } } ///[To be supplied.] ///public override int Count { get { return 1; } } // no-op on the propertyManager /// /// /// public override void AddNew() { throw new NotSupportedException(SR.GetString(SR.DataBindingAddNewNotSupportedOnPropertyManager)); } // no-op on the propertyManager ///[To be supplied.] ////// /// public override void RemoveAt(int index) { throw new NotSupportedException(SR.GetString(SR.DataBindingRemoveAtNotSupportedOnPropertyManager)); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.[To be supplied.] ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- GroupItem.cs
- QilDataSource.cs
- safemediahandle.cs
- HitTestParameters.cs
- compensatingcollection.cs
- WebPartActionVerb.cs
- TextViewSelectionProcessor.cs
- GridItemPattern.cs
- DataBoundControl.cs
- DataViewSettingCollection.cs
- OleDbRowUpdatedEvent.cs
- ReachUIElementCollectionSerializerAsync.cs
- DrawListViewColumnHeaderEventArgs.cs
- WebPartConnectionsDisconnectVerb.cs
- DataServiceStreamProviderWrapper.cs
- StoreItemCollection.Loader.cs
- MemoryStream.cs
- NeutralResourcesLanguageAttribute.cs
- XmlObjectSerializerWriteContextComplex.cs
- NTAccount.cs
- DispatcherSynchronizationContext.cs
- CriticalFinalizerObject.cs
- InkPresenter.cs
- SecurityState.cs
- ConsumerConnectionPoint.cs
- _SecureChannel.cs
- PeerNameRegistration.cs
- Normalization.cs
- ConnectionsZone.cs
- XPathCompileException.cs
- MessageSecurityOverTcp.cs
- Propagator.JoinPropagator.cs
- SequentialUshortCollection.cs
- CellConstant.cs
- EntityAdapter.cs
- SqlCacheDependency.cs
- KnownTypesProvider.cs
- Glyph.cs
- _Win32.cs
- sapiproxy.cs
- ButtonStandardAdapter.cs
- GeneralTransform.cs
- _SingleItemRequestCache.cs
- RequestSecurityTokenResponseCollection.cs
- CacheEntry.cs
- _ShellExpression.cs
- Logging.cs
- HandoffBehavior.cs
- AppDomainEvidenceFactory.cs
- EventRoute.cs
- Peer.cs
- UIElementIsland.cs
- XmlValidatingReaderImpl.cs
- LinkClickEvent.cs
- DataGridViewCellLinkedList.cs
- PageCatalogPartDesigner.cs
- EditingScopeUndoUnit.cs
- ApplicationContext.cs
- QilList.cs
- OrthographicCamera.cs
- Parameter.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs
- TypeToStringValueConverter.cs
- PasswordBoxAutomationPeer.cs
- LeaseManager.cs
- InternalConfigEventArgs.cs
- WebPartVerbCollection.cs
- DispatcherFrame.cs
- ToolStripDropDownClosingEventArgs.cs
- SqlClientMetaDataCollectionNames.cs
- MailDefinition.cs
- XMLSchema.cs
- ObjectQuery_EntitySqlExtensions.cs
- MeasureItemEvent.cs
- SingleTagSectionHandler.cs
- SoapIgnoreAttribute.cs
- InputEventArgs.cs
- DependencyObjectProvider.cs
- SapiInterop.cs
- ProtocolsInstallComponent.cs
- FilterQuery.cs
- MetadataStore.cs
- DataBoundControlHelper.cs
- UserControlCodeDomTreeGenerator.cs
- SerialStream.cs
- ScaleTransform.cs
- SqlMethodAttribute.cs
- StreamHelper.cs
- Vector3DCollectionValueSerializer.cs
- ProgressBarAutomationPeer.cs
- Polygon.cs
- NamedElement.cs
- ContainerUIElement3D.cs
- RegistryKey.cs
- Cursors.cs
- DynamicValueConverter.cs
- AttributeAction.cs
- CompleteWizardStep.cs
- InvalidDataException.cs
- PropertyGroupDescription.cs