Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Presentation / System / Activities / Presentation / Model / DictionaryEditChange.cs / 1305376 / DictionaryEditChange.cs
//----------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//---------------------------------------------------------------
namespace System.Activities.Presentation.Model
{
using System;
using System.Collections.Generic;
using System.Text;
class DictionaryEditChange : ModelChange
{
public ModelItemDictionary Dictionary { get; set; }
public ModelItem Key { get; set; }
public ModelItem OldValue { get; set; }
public ModelItem NewValue { get; set; }
public ModelTreeManager ModelTreeManager { get; set; }
public override string Description
{
get
{
return SR.DictionaryEditEditingScopeDescription;
}
}
public override bool Apply()
{
ModelItem oldValue = this.Dictionary[this.Key];
if ((oldValue == null && this.NewValue == null) ||
(oldValue != null && this.NewValue != null && oldValue.GetCurrentValue().Equals(this.NewValue.GetCurrentValue())))
{
return false;
}
this.ModelTreeManager.ReAddModelItemToModelTree(this.NewValue);
((ModelItemDictionaryImpl)this.Dictionary).EditCore(this.Key, this.NewValue);
if (null != this.OldValue)
{
this.ModelTreeManager.modelService.OnModelItemRemoved(this.OldValue);
((IModelTreeItem)OldValue).RemoveParent(this.Dictionary);
this.ModelTreeManager.ReleaseModelItem(this.OldValue, this.Dictionary);
}
if (null != this.NewValue)
{
this.ModelTreeManager.modelService.OnModelItemAdded(this.NewValue);
}
return true;
}
public override Change GetInverse()
{
return new DictionaryEditChange()
{
Dictionary = this.Dictionary,
Key = this.Key,
OldValue = this.NewValue,
NewValue = this.OldValue,
ModelTreeManager = this.ModelTreeManager,
};
}
}
}
// 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
- SQLByte.cs
- ChangeConflicts.cs
- SqlSelectClauseBuilder.cs
- TextBoxBase.cs
- Hashtable.cs
- DataGridViewCellParsingEventArgs.cs
- WebPartZone.cs
- EditorZoneBase.cs
- AttachmentService.cs
- ProviderSettings.cs
- RectConverter.cs
- MessageBodyMemberAttribute.cs
- MultipartIdentifier.cs
- SqlXml.cs
- InputProcessorProfiles.cs
- CachedFontFamily.cs
- SmtpFailedRecipientException.cs
- SyndicationSerializer.cs
- itemelement.cs
- StylusCollection.cs
- TextTreeInsertUndoUnit.cs
- StreamGeometry.cs
- FormViewUpdatedEventArgs.cs
- DefaultTextStore.cs
- DescriptionAttribute.cs
- TextEvent.cs
- DurableInstanceProvider.cs
- ConstructorNeedsTagAttribute.cs
- XmlLanguageConverter.cs
- HtmlInputText.cs
- PolicyLevel.cs
- NoneExcludedImageIndexConverter.cs
- ActivityDefaults.cs
- MouseDevice.cs
- VersionedStreamOwner.cs
- HtmlSelect.cs
- StreamSecurityUpgradeInitiatorBase.cs
- XmlSchemaComplexContentExtension.cs
- WinFormsComponentEditor.cs
- Int64Storage.cs
- XamlParser.cs
- FieldInfo.cs
- WindowHideOrCloseTracker.cs
- NotSupportedException.cs
- MetadataHelper.cs
- DataControlCommands.cs
- FixedPageStructure.cs
- XmlSchemaSimpleTypeRestriction.cs
- mactripleDES.cs
- EntityDataSourceContainerNameItem.cs
- TextEditorSpelling.cs
- LocalizedNameDescriptionPair.cs
- TokenBasedSetEnumerator.cs
- InputBinding.cs
- MexHttpBindingElement.cs
- SafeFileMappingHandle.cs
- LoadItemsEventArgs.cs
- Accessible.cs
- XPathAncestorIterator.cs
- MobileTextWriter.cs
- Vector3D.cs
- LoginViewDesigner.cs
- InvalidComObjectException.cs
- XmlNodeWriter.cs
- SelectingProviderEventArgs.cs
- StorageRoot.cs
- basecomparevalidator.cs
- MaterialCollection.cs
- EnvironmentPermission.cs
- DataAdapter.cs
- entityreference_tresulttype.cs
- TraceSource.cs
- ListItemParagraph.cs
- XmlSchemaDocumentation.cs
- LinkTarget.cs
- PeoplePickerWrapper.cs
- UriParserTemplates.cs
- Enum.cs
- MailAddress.cs
- SafeArrayTypeMismatchException.cs
- TabItemAutomationPeer.cs
- WorkflowMarkupSerializationManager.cs
- LockedActivityGlyph.cs
- ListSourceHelper.cs
- PathGeometry.cs
- GestureRecognitionResult.cs
- validationstate.cs
- WinEventHandler.cs
- ControlValuePropertyAttribute.cs
- MobileResource.cs
- EventManager.cs
- OleDbCommand.cs
- COM2AboutBoxPropertyDescriptor.cs
- SafeCryptoHandles.cs
- TransformerInfo.cs
- ConstantExpression.cs
- WindowsGrip.cs
- SelectionChangedEventArgs.cs
- ContextMenuStrip.cs
- QuinticEase.cs