Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / DataObjectSettingDataEventArgs.cs / 1305600 / DataObjectSettingDataEventArgs.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: DataObjectSettingData event arguments // //--------------------------------------------------------------------------- using System; namespace System.Windows { ////// Arguments for the DataObject.SettingData event. /// The DataObject.SettingData event is raised during /// Copy (or Drag start) command when an editor /// is going to start data conversion for some /// of data formats. By handling this event an application /// can prevent from editon doing that thus making /// Copy performance better. /// public sealed class DataObjectSettingDataEventArgs : DataObjectEventArgs { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- #region Constructors ////// Creates a DataObjectSettingDataEventArgs. /// /// /// DataObject to which a new data format is going to be added. /// /// /// Format which is going to be added to the DataObject. /// public DataObjectSettingDataEventArgs(IDataObject dataObject, string format) // : base(System.Windows.DataObject.SettingDataEvent, /*isDragDrop:*/false) { if (dataObject == null) { throw new ArgumentNullException("dataObject"); } if (format == null) { throw new ArgumentNullException("format"); } _dataObject = dataObject; _format = format; } #endregion Constructors //------------------------------------------------------ // // Public Properties // //----------------------------------------------------- #region Public Properties ////// DataObject to which a new data format is going to be added. /// public IDataObject DataObject { get { return _dataObject; } } ////// Format which is going to be added to the DataObject. /// public string Format { get { return _format; } } #endregion Public Properties #region Protected Methods //------------------------------------------------------ // // Protected Methods // //------------------------------------------------------ ////// 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) { DataObjectSettingDataEventHandler handler = (DataObjectSettingDataEventHandler)genericHandler; handler(genericTarget, this); } #endregion Protected Methods //----------------------------------------------------- // // Private Fields // //------------------------------------------------------ #region Private Fields private IDataObject _dataObject; private string _format; #endregion Private Fields } ////// The delegate to use for handlers that receive the DataObject.QueryingCopy/QueryingPaste events. /// ////// A handler for a DataObject.SettingData event. /// Te event is fired as part of Copy (or Drag) command /// once for each of data formats added to a DataObject. /// The purpose of this handler is mostly copy command /// optimization. With the help of it application /// can filter some formats from being added to DataObject. /// The other opportunity of doing that exists in /// DataObject.Copying event, which could set all undesirable /// formats to null, but in this case the work for data /// conversion is already done, which may be too expensive. /// By handling DataObject.SettingData event an application /// can prevent from each particular data format conversion. /// By calling DataObjectSettingDataEventArgs.CancelCommand /// method the handler tells an editor to skip one particular /// data format (identified by DataObjectSettingDataEventArgs.Format /// property). Note that calling CancelCommand method /// for this event does not cancel the whole Copy or Drag /// command. /// public delegate void DataObjectSettingDataEventHandler(object sender, DataObjectSettingDataEventArgs e); } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: DataObjectSettingData event arguments // //--------------------------------------------------------------------------- using System; namespace System.Windows { ////// Arguments for the DataObject.SettingData event. /// The DataObject.SettingData event is raised during /// Copy (or Drag start) command when an editor /// is going to start data conversion for some /// of data formats. By handling this event an application /// can prevent from editon doing that thus making /// Copy performance better. /// public sealed class DataObjectSettingDataEventArgs : DataObjectEventArgs { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- #region Constructors ////// Creates a DataObjectSettingDataEventArgs. /// /// /// DataObject to which a new data format is going to be added. /// /// /// Format which is going to be added to the DataObject. /// public DataObjectSettingDataEventArgs(IDataObject dataObject, string format) // : base(System.Windows.DataObject.SettingDataEvent, /*isDragDrop:*/false) { if (dataObject == null) { throw new ArgumentNullException("dataObject"); } if (format == null) { throw new ArgumentNullException("format"); } _dataObject = dataObject; _format = format; } #endregion Constructors //------------------------------------------------------ // // Public Properties // //----------------------------------------------------- #region Public Properties ////// DataObject to which a new data format is going to be added. /// public IDataObject DataObject { get { return _dataObject; } } ////// Format which is going to be added to the DataObject. /// public string Format { get { return _format; } } #endregion Public Properties #region Protected Methods //------------------------------------------------------ // // Protected Methods // //------------------------------------------------------ ////// 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) { DataObjectSettingDataEventHandler handler = (DataObjectSettingDataEventHandler)genericHandler; handler(genericTarget, this); } #endregion Protected Methods //----------------------------------------------------- // // Private Fields // //------------------------------------------------------ #region Private Fields private IDataObject _dataObject; private string _format; #endregion Private Fields } ////// The delegate to use for handlers that receive the DataObject.QueryingCopy/QueryingPaste events. /// ////// A handler for a DataObject.SettingData event. /// Te event is fired as part of Copy (or Drag) command /// once for each of data formats added to a DataObject. /// The purpose of this handler is mostly copy command /// optimization. With the help of it application /// can filter some formats from being added to DataObject. /// The other opportunity of doing that exists in /// DataObject.Copying event, which could set all undesirable /// formats to null, but in this case the work for data /// conversion is already done, which may be too expensive. /// By handling DataObject.SettingData event an application /// can prevent from each particular data format conversion. /// By calling DataObjectSettingDataEventArgs.CancelCommand /// method the handler tells an editor to skip one particular /// data format (identified by DataObjectSettingDataEventArgs.Format /// property). Note that calling CancelCommand method /// for this event does not cancel the whole Copy or Drag /// command. /// public delegate void DataObjectSettingDataEventHandler(object sender, DataObjectSettingDataEventArgs e); } // 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
- ToolstripProfessionalRenderer.cs
- BindingCompleteEventArgs.cs
- Emitter.cs
- Rectangle.cs
- CompressedStack.cs
- BindingWorker.cs
- MenuAdapter.cs
- MultiBinding.cs
- LocatorGroup.cs
- CorrelationService.cs
- ListBase.cs
- FileDataSource.cs
- EntitySqlQueryBuilder.cs
- ObjectQuery.cs
- CDSCollectionETWBCLProvider.cs
- DataListItem.cs
- MarkupObject.cs
- BindingObserver.cs
- EmptyEnumerable.cs
- FixedSOMTableRow.cs
- ValidatorCollection.cs
- XmlSerializerOperationGenerator.cs
- TimeoutStream.cs
- InputElement.cs
- BamlTreeMap.cs
- EtwTrace.cs
- RelatedView.cs
- Dump.cs
- ProfileSettings.cs
- HorizontalAlignConverter.cs
- TableCell.cs
- WindowsRegion.cs
- TreeNodeEventArgs.cs
- EntityContainerEmitter.cs
- NegatedCellConstant.cs
- GZipStream.cs
- PrePostDescendentsWalker.cs
- EventProviderWriter.cs
- DataListCommandEventArgs.cs
- PrintDialog.cs
- ElementProxy.cs
- XmlDocumentType.cs
- GetRecipientListRequest.cs
- RowTypeElement.cs
- ScaleTransform3D.cs
- ConfigurationStrings.cs
- messageonlyhwndwrapper.cs
- Viewport3DAutomationPeer.cs
- RSAProtectedConfigurationProvider.cs
- TrustLevel.cs
- BoolExpr.cs
- FileEnumerator.cs
- PropertyConverter.cs
- SynchronizationContext.cs
- XmlSchemaAnyAttribute.cs
- ConfigXmlReader.cs
- FunctionGenerator.cs
- ComponentFactoryHelpers.cs
- OLEDB_Enum.cs
- CalculatedColumn.cs
- AggregateNode.cs
- PointKeyFrameCollection.cs
- ExceptionUtility.cs
- WSMessageEncoding.cs
- DataGridViewColumnCollection.cs
- AsymmetricSignatureDeformatter.cs
- RemotingConfigParser.cs
- RoleManagerModule.cs
- X509SecurityTokenProvider.cs
- Token.cs
- SerializableAttribute.cs
- InstanceCreationEditor.cs
- UpdateException.cs
- RequestCachePolicy.cs
- MenuCommand.cs
- Resources.Designer.cs
- WsrmFault.cs
- SessionState.cs
- GeneralTransformGroup.cs
- ErrorStyle.cs
- ObservableCollection.cs
- MailAddressCollection.cs
- X509RecipientCertificateServiceElement.cs
- DefaultValueTypeConverter.cs
- StylusShape.cs
- NominalTypeEliminator.cs
- WriteFileContext.cs
- OracleEncoding.cs
- ConfigXmlComment.cs
- NopReturnReader.cs
- SmiEventStream.cs
- NotifyCollectionChangedEventArgs.cs
- SchemaImporterExtensionsSection.cs
- ObjectAnimationUsingKeyFrames.cs
- _SafeNetHandles.cs
- DrawingCollection.cs
- WindowsEditBox.cs
- ToolTip.cs
- ColumnReorderedEventArgs.cs
- EntityConnectionStringBuilder.cs