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
- AppliedDeviceFiltersEditor.cs
- AssociationSet.cs
- QueryStringParameter.cs
- BitmapFrame.cs
- Int16Converter.cs
- ConfigXmlElement.cs
- DateTimeOffsetStorage.cs
- CapacityStreamGeometryContext.cs
- WebDescriptionAttribute.cs
- loginstatus.cs
- FontFamilyIdentifier.cs
- Padding.cs
- PlanCompilerUtil.cs
- SqlConnectionPoolProviderInfo.cs
- Oci.cs
- MailHeaderInfo.cs
- ListManagerBindingsCollection.cs
- SoapInteropTypes.cs
- BindingManagerDataErrorEventArgs.cs
- TypeSystem.cs
- CustomErrorsSectionWrapper.cs
- SystemIPv6InterfaceProperties.cs
- RegisteredExpandoAttribute.cs
- SQLSingle.cs
- XmlQueryType.cs
- EdmSchemaError.cs
- DataRowExtensions.cs
- SoundPlayerAction.cs
- TakeOrSkipWhileQueryOperator.cs
- ProcessModelSection.cs
- ResourcesChangeInfo.cs
- DataGridDetailsPresenterAutomationPeer.cs
- SqlReferenceCollection.cs
- MissingSatelliteAssemblyException.cs
- RemotingAttributes.cs
- TreeViewEvent.cs
- DocumentViewerAutomationPeer.cs
- SpecularMaterial.cs
- Geometry.cs
- Certificate.cs
- RemoteArgument.cs
- XmlWellformedWriter.cs
- Variant.cs
- RenderData.cs
- DataGridViewDataConnection.cs
- OrderedEnumerableRowCollection.cs
- ListViewTableCell.cs
- CompensateDesigner.cs
- XmlTextReader.cs
- TaskDesigner.cs
- TextLine.cs
- IISMapPath.cs
- _LazyAsyncResult.cs
- DataGridViewTextBoxColumn.cs
- BaseServiceProvider.cs
- SQLRoleProvider.cs
- ModuleConfigurationInfo.cs
- AuthenticationModulesSection.cs
- WindowsClaimSet.cs
- PopupEventArgs.cs
- EditingCommands.cs
- GlyphCache.cs
- SchemaElement.cs
- StringValueConverter.cs
- DataSourceCacheDurationConverter.cs
- DataFormats.cs
- WizardPanel.cs
- FlowNode.cs
- MediaPlayer.cs
- IgnoreFileBuildProvider.cs
- DesignerSerializationVisibilityAttribute.cs
- RuntimeWrappedException.cs
- Wow64ConfigurationLoader.cs
- ImportContext.cs
- ScopelessEnumAttribute.cs
- OleDbPermission.cs
- TransformedBitmap.cs
- BaseResourcesBuildProvider.cs
- Serializer.cs
- SoapEnumAttribute.cs
- NumberFormatInfo.cs
- ChildTable.cs
- ToolStripMenuItemCodeDomSerializer.cs
- PropertyValue.cs
- RoutedCommand.cs
- InputScopeAttribute.cs
- SecurityElement.cs
- UnsafeNativeMethods.cs
- ActivityExecutorSurrogate.cs
- KnownTypesHelper.cs
- CustomWebEventKey.cs
- ConfigurationManagerInternal.cs
- XsltInput.cs
- ResourceCodeDomSerializer.cs
- SqlInfoMessageEvent.cs
- WebRequestModulesSection.cs
- StringUtil.cs
- RelationalExpressions.cs
- MobileCategoryAttribute.cs
- ContentTypeSettingClientMessageFormatter.cs