Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Controls / DataGridClipboardCellContent.cs / 1305600 / DataGridClipboardCellContent.cs
//---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Text; namespace System.Windows.Controls { ////// This structure encapsulate the cell information necessary when clipboard content is prepared /// public struct DataGridClipboardCellContent { ////// Creates a new DataGridClipboardCellValue structure containing information about DataGrid cell /// /// DataGrid row item containing the cell /// DataGridColumn containing the cell /// DataGrid cell value public DataGridClipboardCellContent(object item, DataGridColumn column, object content) { _item = item; _column = column; _content = content; } ////// DataGrid row item containing the cell /// public object Item { get { return _item; } } ////// DataGridColumn containing the cell /// public DataGridColumn Column { get { return _column; } } ////// Cell content /// public object Content { get { return _content; } } ////// Field-by-field comparison to avoid reflection-based ValueType.Equals /// /// ///True iff this and data are equal public override bool Equals(object data) { DataGridClipboardCellContent clipboardCellContent; if (data is DataGridClipboardCellContent) { clipboardCellContent = (DataGridClipboardCellContent)data; return (_column == clipboardCellContent._column) && (_content == clipboardCellContent._content) && (_item == clipboardCellContent._item); } return false; } ////// Return a deterministic hash code /// ///Hash value public override int GetHashCode() { return ((_column == null ? 0 : _column.GetHashCode()) ^ (_content == null ? 0 : _content.GetHashCode()) ^ (_item == null ? 0 : _item.GetHashCode())); } ////// Field-by-field comparison to avoid reflection-based ValueType.Equals /// /// /// ///True iff clipboardCellContent1 and clipboardCellContent2 are equal public static bool operator ==( DataGridClipboardCellContent clipboardCellContent1, DataGridClipboardCellContent clipboardCellContent2) { return (clipboardCellContent1._column == clipboardCellContent2._column) && (clipboardCellContent1._content == clipboardCellContent2._content) && (clipboardCellContent1._item == clipboardCellContent2._item); } ////// Field-by-field comparison to avoid reflection-based ValueType.Equals /// /// /// ///True iff clipboardCellContent1 and clipboardCellContent2 are NOT equal public static bool operator !=( DataGridClipboardCellContent clipboardCellContent1, DataGridClipboardCellContent clipboardCellContent2) { return (clipboardCellContent1._column != clipboardCellContent2._column) || (clipboardCellContent1._content != clipboardCellContent2._content) || (clipboardCellContent1._item != clipboardCellContent2._item); } private object _item; private DataGridColumn _column; private object _content; } } // 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. // //--------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Text; namespace System.Windows.Controls { ////// This structure encapsulate the cell information necessary when clipboard content is prepared /// public struct DataGridClipboardCellContent { ////// Creates a new DataGridClipboardCellValue structure containing information about DataGrid cell /// /// DataGrid row item containing the cell /// DataGridColumn containing the cell /// DataGrid cell value public DataGridClipboardCellContent(object item, DataGridColumn column, object content) { _item = item; _column = column; _content = content; } ////// DataGrid row item containing the cell /// public object Item { get { return _item; } } ////// DataGridColumn containing the cell /// public DataGridColumn Column { get { return _column; } } ////// Cell content /// public object Content { get { return _content; } } ////// Field-by-field comparison to avoid reflection-based ValueType.Equals /// /// ///True iff this and data are equal public override bool Equals(object data) { DataGridClipboardCellContent clipboardCellContent; if (data is DataGridClipboardCellContent) { clipboardCellContent = (DataGridClipboardCellContent)data; return (_column == clipboardCellContent._column) && (_content == clipboardCellContent._content) && (_item == clipboardCellContent._item); } return false; } ////// Return a deterministic hash code /// ///Hash value public override int GetHashCode() { return ((_column == null ? 0 : _column.GetHashCode()) ^ (_content == null ? 0 : _content.GetHashCode()) ^ (_item == null ? 0 : _item.GetHashCode())); } ////// Field-by-field comparison to avoid reflection-based ValueType.Equals /// /// /// ///True iff clipboardCellContent1 and clipboardCellContent2 are equal public static bool operator ==( DataGridClipboardCellContent clipboardCellContent1, DataGridClipboardCellContent clipboardCellContent2) { return (clipboardCellContent1._column == clipboardCellContent2._column) && (clipboardCellContent1._content == clipboardCellContent2._content) && (clipboardCellContent1._item == clipboardCellContent2._item); } ////// Field-by-field comparison to avoid reflection-based ValueType.Equals /// /// /// ///True iff clipboardCellContent1 and clipboardCellContent2 are NOT equal public static bool operator !=( DataGridClipboardCellContent clipboardCellContent1, DataGridClipboardCellContent clipboardCellContent2) { return (clipboardCellContent1._column != clipboardCellContent2._column) || (clipboardCellContent1._content != clipboardCellContent2._content) || (clipboardCellContent1._item != clipboardCellContent2._item); } private object _item; private DataGridColumn _column; private object _content; } } // 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
- RuntimeTransactionHandle.cs
- SqlProvider.cs
- ApplicationBuildProvider.cs
- EventMappingSettingsCollection.cs
- Lease.cs
- SoapTransportImporter.cs
- COAUTHINFO.cs
- ThemeInfoAttribute.cs
- FormsAuthenticationUserCollection.cs
- SerializationObjectManager.cs
- FillBehavior.cs
- VirtualizingPanel.cs
- QueryStringParameter.cs
- BitmapEffectrendercontext.cs
- DomainConstraint.cs
- GridView.cs
- RoleGroupCollection.cs
- TriState.cs
- OutOfMemoryException.cs
- ProfileGroupSettingsCollection.cs
- CancelEventArgs.cs
- XmlQueryType.cs
- SkinBuilder.cs
- XslTransform.cs
- CustomWebEventKey.cs
- UnorderedHashRepartitionStream.cs
- ISFClipboardData.cs
- PermissionSetTriple.cs
- Vector3DKeyFrameCollection.cs
- SchemaEntity.cs
- ToolBar.cs
- Vector3DAnimationBase.cs
- Image.cs
- MemberExpression.cs
- ControlPropertyNameConverter.cs
- ScrollBar.cs
- EmptyEnumerable.cs
- WebPartVerbsEventArgs.cs
- MailMessage.cs
- CompensableActivity.cs
- PropertyDescriptorCollection.cs
- ObjectStateManagerMetadata.cs
- FormView.cs
- TableAutomationPeer.cs
- RuntimeResourceSet.cs
- InputProviderSite.cs
- SimpleBitVector32.cs
- RawKeyboardInputReport.cs
- BrowserDefinition.cs
- ReadOnlyDictionary.cs
- storepermission.cs
- DesignerProperties.cs
- StyleReferenceConverter.cs
- LinkClickEvent.cs
- AssociationSetMetadata.cs
- CodeParameterDeclarationExpressionCollection.cs
- ActiveXSite.cs
- RegexBoyerMoore.cs
- JsonByteArrayDataContract.cs
- SystemKeyConverter.cs
- ContextStaticAttribute.cs
- XmlEntityReference.cs
- Geometry.cs
- MSAANativeProvider.cs
- ApplicationDirectory.cs
- AsymmetricAlgorithm.cs
- ContentOperations.cs
- SponsorHelper.cs
- DependencyPropertyDescriptor.cs
- AttributeExtensions.cs
- ZipPackagePart.cs
- ReachDocumentReferenceSerializer.cs
- QilLiteral.cs
- RoutedEvent.cs
- WebPartConnectionsCancelVerb.cs
- Block.cs
- CustomAttribute.cs
- StoreAnnotationsMap.cs
- AdornerDecorator.cs
- XamlWrapperReaders.cs
- SamlAttributeStatement.cs
- RequestCacheValidator.cs
- ControlAdapter.cs
- SecurityIdentifierElement.cs
- TypeGeneratedEventArgs.cs
- InvalidateEvent.cs
- ModulesEntry.cs
- DatatypeImplementation.cs
- DeploymentSection.cs
- Frame.cs
- PaintValueEventArgs.cs
- CollectionConverter.cs
- WebPartTransformerCollection.cs
- ClosableStream.cs
- TypeConstant.cs
- TextBoxAutoCompleteSourceConverter.cs
- Ref.cs
- HostedElements.cs
- RangeBaseAutomationPeer.cs
- TextContainerChangedEventArgs.cs