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
- ObjectList.cs
- DataGridViewCheckBoxCell.cs
- Hash.cs
- MatrixAnimationUsingKeyFrames.cs
- ConsoleKeyInfo.cs
- SignedPkcs7.cs
- CodeRemoveEventStatement.cs
- StandardBindingElementCollection.cs
- MetadataCacheItem.cs
- EntityTypeEmitter.cs
- FunctionQuery.cs
- CompatibleIComparer.cs
- SqlBuffer.cs
- BitArray.cs
- ExceptionUtil.cs
- ContentHostHelper.cs
- BindingsSection.cs
- ConfigurationValue.cs
- XmlWriterSettings.cs
- CompilationUnit.cs
- LinqDataSourceView.cs
- EntityModelSchemaGenerator.cs
- OneOfElement.cs
- SatelliteContractVersionAttribute.cs
- CodeGenerator.cs
- PrintPreviewControl.cs
- BitmapFrameEncode.cs
- KeyEventArgs.cs
- PathFigureCollection.cs
- RegisteredDisposeScript.cs
- PropertyNames.cs
- SchemaImporter.cs
- HwndAppCommandInputProvider.cs
- HttpFileCollectionWrapper.cs
- CodeDirectiveCollection.cs
- EventMap.cs
- DependsOnAttribute.cs
- StorageFunctionMapping.cs
- GridViewRowEventArgs.cs
- SafeMarshalContext.cs
- TemplateControlBuildProvider.cs
- ParentControlDesigner.cs
- XmlAttributeOverrides.cs
- TextParagraphView.cs
- MetricEntry.cs
- ApplicationFileCodeDomTreeGenerator.cs
- SafeUserTokenHandle.cs
- Separator.cs
- PerformanceCounterManager.cs
- ValueQuery.cs
- Object.cs
- StringPropertyBuilder.cs
- BuildProvidersCompiler.cs
- embossbitmapeffect.cs
- UserNameSecurityTokenAuthenticator.cs
- DataSourceDescriptorCollection.cs
- XPathNode.cs
- InfoCardProofToken.cs
- IIS7UserPrincipal.cs
- TemplateNameScope.cs
- OracleDataReader.cs
- Point3DAnimationUsingKeyFrames.cs
- HitTestWithGeometryDrawingContextWalker.cs
- JavaScriptSerializer.cs
- AsynchronousChannelMergeEnumerator.cs
- DataGridViewRowPrePaintEventArgs.cs
- SvcMapFileSerializer.cs
- GridViewCommandEventArgs.cs
- SingleSelectRootGridEntry.cs
- EventPrivateKey.cs
- TraceContextEventArgs.cs
- ScriptingSectionGroup.cs
- FieldToken.cs
- CheckableControlBaseAdapter.cs
- Point4DConverter.cs
- ByteAnimationBase.cs
- MouseButton.cs
- ComPlusTypeLoader.cs
- DataObjectAttribute.cs
- DbInsertCommandTree.cs
- ProcessModuleCollection.cs
- TransformerInfo.cs
- BlobPersonalizationState.cs
- EncodingNLS.cs
- DataError.cs
- EntityFrameworkVersions.cs
- CatalogPartCollection.cs
- SerialErrors.cs
- EntityDesignerDataSourceView.cs
- KeyTimeConverter.cs
- ActiveXSite.cs
- MSAANativeProvider.cs
- SplitterEvent.cs
- PointCollection.cs
- DeviceContext2.cs
- serverconfig.cs
- ZoneIdentityPermission.cs
- IPGlobalProperties.cs
- ComponentSerializationService.cs
- AdapterUtil.cs