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
- ThemeDictionaryExtension.cs
- SendActivityDesigner.cs
- ContextMenuStripActionList.cs
- Error.cs
- PageCanvasSize.cs
- DatagridviewDisplayedBandsData.cs
- Composition.cs
- BCryptHashAlgorithm.cs
- TimeSpanConverter.cs
- NamespaceMapping.cs
- BookmarkWorkItem.cs
- CachedFontFamily.cs
- AllMembershipCondition.cs
- MemberAssignment.cs
- PowerModeChangedEventArgs.cs
- isolationinterop.cs
- DnsEndPoint.cs
- _SingleItemRequestCache.cs
- WeakEventTable.cs
- SmtpAuthenticationManager.cs
- ProcessModule.cs
- AddInContractAttribute.cs
- DataRowChangeEvent.cs
- GridLength.cs
- EventRoute.cs
- ScopelessEnumAttribute.cs
- HtmlTextViewAdapter.cs
- TypeEnumerableViewSchema.cs
- CommandValueSerializer.cs
- SingleObjectCollection.cs
- DescendentsWalkerBase.cs
- WebPartConnectionsConfigureVerb.cs
- InfoCardSymmetricCrypto.cs
- TranslateTransform.cs
- SamlSecurityTokenAuthenticator.cs
- RequestCacheValidator.cs
- ClientSideQueueItem.cs
- GridViewRowPresenterBase.cs
- ListBoxItemAutomationPeer.cs
- Point3DAnimationBase.cs
- ReflectTypeDescriptionProvider.cs
- Mappings.cs
- OleDbConnection.cs
- CompoundFileReference.cs
- SiteMapSection.cs
- RegistryDataKey.cs
- UserInitiatedRoutedEventPermission.cs
- SmiEventSink.cs
- PageCache.cs
- TypeHelper.cs
- TextFormatter.cs
- UiaCoreTypesApi.cs
- TypeLoadException.cs
- WebControl.cs
- AnnotationResourceChangedEventArgs.cs
- AVElementHelper.cs
- ContractHandle.cs
- _BaseOverlappedAsyncResult.cs
- RuntimeConfig.cs
- XmlImplementation.cs
- TileModeValidation.cs
- RSAPKCS1SignatureDeformatter.cs
- SqlParameter.cs
- DiagnosticsConfiguration.cs
- uribuilder.cs
- ConditionValidator.cs
- StreamWithDictionary.cs
- OracleTransaction.cs
- InstancePersistenceEvent.cs
- InheritanceContextHelper.cs
- DataGridViewRowErrorTextNeededEventArgs.cs
- ViewPort3D.cs
- HyperLinkDesigner.cs
- SystemUnicastIPAddressInformation.cs
- ThreadInterruptedException.cs
- TableDetailsCollection.cs
- GifBitmapEncoder.cs
- NameScope.cs
- CfgRule.cs
- Activator.cs
- NetworkCredential.cs
- SolidBrush.cs
- WebPartChrome.cs
- DataService.cs
- QueryStatement.cs
- SemanticResolver.cs
- SynchronizedDispatch.cs
- SelfIssuedAuthRSAPKCS1SignatureDeformatter.cs
- ImageCreator.cs
- ReaderContextStackData.cs
- TemplatedAdorner.cs
- SqlUserDefinedTypeAttribute.cs
- WmlControlAdapter.cs
- DesignerTextViewAdapter.cs
- DetailsViewDeletedEventArgs.cs
- InputMethodStateChangeEventArgs.cs
- ServiceBehaviorElementCollection.cs
- DataGridViewRowHeaderCell.cs
- GridViewRowCollection.cs
- Attributes.cs