Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / System / Windows / Controls / TextChangedEventArgs.cs / 2 / TextChangedEventArgs.cs
//----------------------------------------------------------------------------
//
//
// Copyright (C) Microsoft Corporation. All rights reserved.
//
//
//
// Description: TextChanged event argument.
//
// History:
// 09/27/2004 : [....] - Created
//
//---------------------------------------------------------------------------
using System.ComponentModel;
using System.Windows.Documents;
using System.Collections.Generic;
using System.Collections.ObjectModel;
namespace System.Windows.Controls
{
#region TextChangedEvent
///
/// How the undo stack caused or is affected by a text change.
///
public enum UndoAction
{
///
/// This change will not affect the undo stack at all
///
None = 0,
///
/// This change will merge into the previous undo unit
///
Merge = 1,
///
/// This change is the result of a call to Undo()
///
Undo = 2,
///
/// This change is the result of a call to Redo()
///
Redo = 3,
///
/// This change will clear the undo stack
///
Clear = 4,
///
/// This change will create a new undo unit
///
Create = 5
}
///
/// The delegate to use for handlers that receive TextChangedEventArgs
///
public delegate void TextChangedEventHandler(object sender, TextChangedEventArgs e);
///
/// The TextChangedEventArgs class represents a type of RoutedEventArgs that
/// are relevant to events raised by changing editable text.
///
public class TextChangedEventArgs : RoutedEventArgs
{
///
/// constructor
///
/// event id
/// UndoAction
/// ReadOnlyCollection
public TextChangedEventArgs(RoutedEvent id, UndoAction action, ICollection changes) : base()
{
if (id == null)
{
throw new ArgumentNullException("id");
}
if (action < UndoAction.None || action > UndoAction.Create)
{
throw new InvalidEnumArgumentException("action", (int)action, typeof(UndoAction));
}
RoutedEvent=id;
_undoAction = action;
_changes = changes;
}
///
/// constructor
///
/// event id
/// UndoAction
public TextChangedEventArgs(RoutedEvent id, UndoAction action)
: this(id, action, new ReadOnlyCollection(new List()))
{
}
///
/// How the undo stack caused or is affected by this text change
///
/// UndoAction enum
public UndoAction UndoAction
{
get
{
return _undoAction;
}
}
///
/// A readonly list of TextChanges, sorted by offset in order from the beginning to the end of
/// the document, describing the dirty areas of the document and in what way(s) those
/// areas differ from the pre-change document. For example, if content at offset 0 was:
///
/// The quick brown fox jumps over the lazy dog.
///
/// and changed to:
///
/// The brown fox jumps over a dog.
///
/// Changes would contain two TextChanges with the following information:
///
/// Change 1
/// --------
/// Offset: 5
/// RemovedCount: 6
/// AddedCount: 0
/// PropertyCount: 0
///
/// Change 2
/// --------
/// Offset: 26
/// RemovedCount: 8
/// AddedCount: 1
/// PropertyCount: 0
///
/// If no changes were made, the collection will be empty.
///
public ICollection Changes
{
get
{
return _changes;
}
}
///
/// The mechanism used to call the type-specific handler on the
/// target.
///
///
/// The generic handler to call in a type-specific way.
///
///
/// The target to call the handler on.
///
protected override void InvokeEventHandler(Delegate genericHandler, object genericTarget)
{
TextChangedEventHandler handler;
handler = (TextChangedEventHandler)genericHandler;
handler(genericTarget, this);
}
private UndoAction _undoAction;
private readonly ICollection _changes;
}
#endregion TextChangedEvent
}
// 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
- DataServiceHostWrapper.cs
- TextWriter.cs
- SoapElementAttribute.cs
- ReferenceAssemblyAttribute.cs
- WorkflowService.cs
- TracedNativeMethods.cs
- OrderToken.cs
- PointLight.cs
- KeyEventArgs.cs
- DescendentsWalker.cs
- ComboBoxItem.cs
- QueryResults.cs
- SafeUserTokenHandle.cs
- DbXmlEnabledProviderManifest.cs
- ExtractorMetadata.cs
- SendMailErrorEventArgs.cs
- StatusBar.cs
- UnsafeNativeMethods.cs
- ClientSettingsSection.cs
- BuildDependencySet.cs
- UnmanagedHandle.cs
- ObjectDataSourceStatusEventArgs.cs
- elementinformation.cs
- XamlReaderHelper.cs
- EllipticalNodeOperations.cs
- ChameleonKey.cs
- PingReply.cs
- ContextToken.cs
- precedingsibling.cs
- ValueTable.cs
- ReflectionUtil.cs
- DataServiceQueryProvider.cs
- DATA_BLOB.cs
- SafeFindHandle.cs
- HostProtectionPermission.cs
- CodeDelegateInvokeExpression.cs
- UniqueEventHelper.cs
- OrderedDictionary.cs
- UIElement.cs
- SoapFault.cs
- CharStorage.cs
- OleDbStruct.cs
- MultiView.cs
- QueueAccessMode.cs
- MdiWindowListStrip.cs
- BaseTemplateCodeDomTreeGenerator.cs
- SspiSecurityToken.cs
- CodeExpressionCollection.cs
- SystemDiagnosticsSection.cs
- AsyncDataRequest.cs
- ReceiveSecurityHeader.cs
- DrawingImage.cs
- XmlBindingWorker.cs
- StateWorkerRequest.cs
- HtmlTextArea.cs
- Point3DIndependentAnimationStorage.cs
- DataGridViewRowEventArgs.cs
- DataGridViewColumnHeaderCell.cs
- MultipartIdentifier.cs
- TransformConverter.cs
- WebPartChrome.cs
- ChannelBase.cs
- SafeTokenHandle.cs
- DocumentStream.cs
- DiscreteKeyFrames.cs
- ChangesetResponse.cs
- ToolStripSeparator.cs
- MsmqBindingElementBase.cs
- ItemCheckEvent.cs
- Misc.cs
- Normalization.cs
- Highlights.cs
- HtmlTernaryTree.cs
- AssemblyFilter.cs
- ReadContentAsBinaryHelper.cs
- TableDetailsCollection.cs
- DataSourceGroupCollection.cs
- DeploymentSectionCache.cs
- SmiXetterAccessMap.cs
- ProxyGenerationError.cs
- WebSysDescriptionAttribute.cs
- SpoolingTask.cs
- VisualStyleTypesAndProperties.cs
- DefaultExpression.cs
- ResourceDisplayNameAttribute.cs
- XmlSerializerSection.cs
- UIElementParagraph.cs
- EntityClientCacheKey.cs
- CollectionView.cs
- SoapProcessingBehavior.cs
- KeyGestureValueSerializer.cs
- ObjectDataSourceFilteringEventArgs.cs
- EventMappingSettingsCollection.cs
- DataGridViewColumnEventArgs.cs
- XPathQilFactory.cs
- SharedStatics.cs
- SqlWebEventProvider.cs
- Column.cs
- DirectoryInfo.cs
- ValidatorCollection.cs