Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Presentation / System / Activities / Presentation / Model / PropertyChange.cs / 1305376 / PropertyChange.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.Activities.Presentation.Model { using System; using System.Collections.Generic; using System.Text; using System.Globalization; using System.Runtime; class PropertyChange : ModelChange { public ModelItem Owner { get; set; } public string PropertyName { get; set; } public ModelItem OldValue { get; set; } public ModelItem NewValue { get; set; } public ModelTreeManager ModelTreeManager { get; set; } public override string Description { get { return string.Format(CultureInfo.InvariantCulture, "{0} - {1}", SR.PropertyChangeEditingScopeDescription, this.PropertyName); } } public override bool Apply() { Fx.Assert(this.ModelTreeManager != null, "Modeltreemanager cannot be null"); Fx.Assert(this.Owner != null, "Owner modelitem cannot be null"); Fx.Assert(!String.IsNullOrEmpty(this.PropertyName), " property name cannot be null or emptry"); ModelPropertyImpl dataModelProperty = (ModelPropertyImpl)this.Owner.Properties[this.PropertyName]; ModelItem oldValue = dataModelProperty.Value; if ((oldValue == null && this.NewValue == null) || (oldValue != null && this.NewValue != null && oldValue.GetCurrentValue().Equals(this.NewValue.GetCurrentValue()))) { return false; } dataModelProperty.SetValueCore(this.NewValue); this.ModelTreeManager.NotifyPropertyChange(dataModelProperty); return true; } public override Change GetInverse() { return new PropertyChange() { ModelTreeManager = this.ModelTreeManager, Owner = this.Owner, OldValue = this.NewValue, NewValue = this.OldValue, PropertyName = this.PropertyName }; } } } // 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
- RegionIterator.cs
- FixedPosition.cs
- CodeVariableDeclarationStatement.cs
- HttpRequest.cs
- MarkerProperties.cs
- ACL.cs
- MarkedHighlightComponent.cs
- ModelPropertyImpl.cs
- XNodeSchemaApplier.cs
- ElementProxy.cs
- Substitution.cs
- AutoScrollHelper.cs
- DependencyPropertyDescriptor.cs
- RequestCachePolicyConverter.cs
- DBCSCodePageEncoding.cs
- SettingsProperty.cs
- HtmlInputControl.cs
- DesignerDataColumn.cs
- DataGridItem.cs
- BasicDesignerLoader.cs
- XmlMtomWriter.cs
- QueryableDataSourceView.cs
- HttpProfileBase.cs
- XamlTypeMapper.cs
- OdbcConnectionFactory.cs
- DesignerListAdapter.cs
- ProxyWebPartConnectionCollection.cs
- PageBreakRecord.cs
- TableItemStyle.cs
- DataStorage.cs
- EnumConverter.cs
- CapacityStreamGeometryContext.cs
- ContractMapping.cs
- BaseTemplateCodeDomTreeGenerator.cs
- ChooseAction.cs
- XmlDocumentFieldSchema.cs
- RequestQueue.cs
- SettingsSection.cs
- NameScope.cs
- LinqDataSource.cs
- MsmqIntegrationReceiveParameters.cs
- WebPartTransformerCollection.cs
- XPathNavigatorException.cs
- PathTooLongException.cs
- CompensatableTransactionScopeActivityDesigner.cs
- CorrelationTokenTypeConvertor.cs
- DataTableCollection.cs
- OracleFactory.cs
- CompModSwitches.cs
- FSWPathEditor.cs
- CodeAttributeDeclarationCollection.cs
- RedirectionProxy.cs
- TextEvent.cs
- Annotation.cs
- SystemParameters.cs
- MethodCallTranslator.cs
- CellNormalizer.cs
- RC2CryptoServiceProvider.cs
- BitmapEffectGroup.cs
- ToggleProviderWrapper.cs
- XmlValidatingReaderImpl.cs
- TableSectionStyle.cs
- DataStorage.cs
- TextElement.cs
- SerializationEventsCache.cs
- CheckPair.cs
- GlobalProxySelection.cs
- TableItemStyle.cs
- HttpProfileGroupBase.cs
- HtmlImage.cs
- ObjectResult.cs
- PointLightBase.cs
- ProfessionalColorTable.cs
- SequentialUshortCollection.cs
- ArgumentNullException.cs
- QuotedStringWriteStateInfo.cs
- UnsafeNativeMethods.cs
- CircleEase.cs
- Dynamic.cs
- PixelFormat.cs
- EmptyControlCollection.cs
- SpecularMaterial.cs
- TemplatedEditableDesignerRegion.cs
- ViewPort3D.cs
- EncryptionUtility.cs
- CursorInteropHelper.cs
- AttributeTableBuilder.cs
- Range.cs
- Point3DCollection.cs
- MimeTypePropertyAttribute.cs
- AxDesigner.cs
- BadImageFormatException.cs
- TypeGeneratedEventArgs.cs
- BaseTemplateParser.cs
- ParagraphResult.cs
- SecurityContextSecurityToken.cs
- StylusEventArgs.cs
- RuleInfoComparer.cs
- RectangleHotSpot.cs
- WebZoneDesigner.cs