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
- CoTaskMemHandle.cs
- EventItfInfo.cs
- EventWaitHandle.cs
- TypeToArgumentTypeConverter.cs
- DeferredReference.cs
- FixUpCollection.cs
- BaseProcessor.cs
- CodeSnippetExpression.cs
- RawUIStateInputReport.cs
- BitSet.cs
- PriorityQueue.cs
- DataRowCollection.cs
- HttpRawResponse.cs
- DictionarySectionHandler.cs
- BorderGapMaskConverter.cs
- _SSPISessionCache.cs
- PointHitTestParameters.cs
- ObjectSecurityT.cs
- WSSecurityOneDotZeroSendSecurityHeader.cs
- VerificationException.cs
- RichTextBoxConstants.cs
- SizeConverter.cs
- IUnknownConstantAttribute.cs
- TreeViewDataItemAutomationPeer.cs
- PrefixHandle.cs
- Image.cs
- ScriptingAuthenticationServiceSection.cs
- TextCompositionEventArgs.cs
- ReferenceEqualityComparer.cs
- AspNetHostingPermission.cs
- XPathDocumentNavigator.cs
- ProfileInfo.cs
- RegexWriter.cs
- ContentElement.cs
- WindowsSpinner.cs
- DateRangeEvent.cs
- Cell.cs
- AsyncContentLoadedEventArgs.cs
- SerializationFieldInfo.cs
- _ShellExpression.cs
- XmlSchemaComplexContentExtension.cs
- FileDialogPermission.cs
- KerberosSecurityTokenAuthenticator.cs
- ColorPalette.cs
- SspiNegotiationTokenAuthenticator.cs
- WindowsListViewGroup.cs
- AssemblyBuilder.cs
- DrawingGroupDrawingContext.cs
- MenuCommand.cs
- BindingContext.cs
- TreeNodeBindingCollection.cs
- Table.cs
- LookupBindingPropertiesAttribute.cs
- ControlEvent.cs
- OrderToken.cs
- LayoutTableCell.cs
- PropertyItem.cs
- IUnknownConstantAttribute.cs
- NegotiationTokenAuthenticatorStateCache.cs
- SubqueryRules.cs
- BitVector32.cs
- MetadataArtifactLoaderResource.cs
- TextParentUndoUnit.cs
- PathData.cs
- Choices.cs
- ActivityDesignerLayoutSerializers.cs
- SimpleApplicationHost.cs
- GlobalProxySelection.cs
- MimeTypePropertyAttribute.cs
- RegexMatch.cs
- AdapterDictionary.cs
- ListItemConverter.cs
- Button.cs
- XmlComment.cs
- RbTree.cs
- ApplicationId.cs
- TransactionFormatter.cs
- InternalDispatchObject.cs
- WebPartTracker.cs
- SrgsDocumentParser.cs
- StyleTypedPropertyAttribute.cs
- GridToolTip.cs
- MergePropertyDescriptor.cs
- MutexSecurity.cs
- MessageBox.cs
- SqlConnectionManager.cs
- ConfigurationValidatorAttribute.cs
- InputProviderSite.cs
- PropertyMapper.cs
- HttpResponseHeader.cs
- XPathAncestorIterator.cs
- ResizeGrip.cs
- DecimalAnimationBase.cs
- FaultHandlingFilter.cs
- TableSectionStyle.cs
- ConfigurationLocationCollection.cs
- TypeLibraryHelper.cs
- SiteMapNodeItemEventArgs.cs
- Signature.cs
- RadioButtonBaseAdapter.cs