Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Framework / System / Windows / Automation / Peers / TableCellAutomationPeer.cs / 1 / TableCellAutomationPeer.cs
//----------------------------------------------------------------------------
//
// Copyright (C) Microsoft Corporation. All rights reserved.
//
// File: TableCellAutomationPeer.cs
//
// Description: Automation peer for TableCell
//
//---------------------------------------------------------------------------
using System.Windows.Automation.Provider; // IRawElementProviderSimple
using System.Windows.Documents;
namespace System.Windows.Automation.Peers
{
///
public class TableCellAutomationPeer : TextElementAutomationPeer, IGridItemProvider
{
///
/// Constructor.
///
/// Owner of the AutomationPeer.
public TableCellAutomationPeer(TableCell owner)
: base(owner)
{ }
///
///
///
public override object GetPattern(PatternInterface patternInterface)
{
if (patternInterface == PatternInterface.GridItem)
{
return this;
}
return null;
}
///
///
///
protected override AutomationControlType GetAutomationControlTypeCore()
{
return AutomationControlType.Custom;
}
///
///
///
protected override string GetLocalizedControlTypeCore()
{
return "cell";
}
///
///
///
protected override string GetClassNameCore()
{
return "TableCell";
}
///
///
///
protected override bool IsControlElementCore()
{
return true;
}
///
///
///
protected override bool IsContentElementCore()
{
return true;
}
///
/// Raises property changed events in response to column span change.
///
internal void OnColumnSpanChanged(int oldValue, int newValue)
{
RaisePropertyChangedEvent(GridItemPatternIdentifiers.ColumnSpanProperty, oldValue, newValue);
}
///
/// Raises property changed events in response to row span change.
///
internal void OnRowSpanChanged(int oldValue, int newValue)
{
RaisePropertyChangedEvent(GridItemPatternIdentifiers.RowSpanProperty, oldValue, newValue);
}
//-------------------------------------------------------------------
//
// IGridProvider Members
//
//-------------------------------------------------------------------
#region IGridItemProvider Members
///
/// Returns the current row that the item is located at.
///
int IGridItemProvider.Row
{
get
{
return ((TableCell)Owner).RowIndex;
}
}
///
/// Returns the current column that the item is located at.
///
int IGridItemProvider.Column
{
get
{
return ((TableCell)Owner).ColumnIndex;
}
}
///
/// Return the current number of rows that the item spans.
///
int IGridItemProvider.RowSpan
{
get
{
return ((TableCell)Owner).RowSpan;
}
}
///
/// Return the current number of columns that the item spans.
///
int IGridItemProvider.ColumnSpan
{
get
{
return ((TableCell)Owner).ColumnSpan;
}
}
///
/// Returns the container that maintains the grid layout for the item.
///
IRawElementProviderSimple IGridItemProvider.ContainingGrid
{
get
{
if ((TableCell)Owner != null)
{
return ProviderFromPeer(CreatePeerForElement(((TableCell)Owner).Table));
}
else
{
return null;
}
}
}
#endregion IGridItemProvider Members
}
}
// 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.
//
// File: TableCellAutomationPeer.cs
//
// Description: Automation peer for TableCell
//
//---------------------------------------------------------------------------
using System.Windows.Automation.Provider; // IRawElementProviderSimple
using System.Windows.Documents;
namespace System.Windows.Automation.Peers
{
///
public class TableCellAutomationPeer : TextElementAutomationPeer, IGridItemProvider
{
///
/// Constructor.
///
/// Owner of the AutomationPeer.
public TableCellAutomationPeer(TableCell owner)
: base(owner)
{ }
///
///
///
public override object GetPattern(PatternInterface patternInterface)
{
if (patternInterface == PatternInterface.GridItem)
{
return this;
}
return null;
}
///
///
///
protected override AutomationControlType GetAutomationControlTypeCore()
{
return AutomationControlType.Custom;
}
///
///
///
protected override string GetLocalizedControlTypeCore()
{
return "cell";
}
///
///
///
protected override string GetClassNameCore()
{
return "TableCell";
}
///
///
///
protected override bool IsControlElementCore()
{
return true;
}
///
///
///
protected override bool IsContentElementCore()
{
return true;
}
///
/// Raises property changed events in response to column span change.
///
internal void OnColumnSpanChanged(int oldValue, int newValue)
{
RaisePropertyChangedEvent(GridItemPatternIdentifiers.ColumnSpanProperty, oldValue, newValue);
}
///
/// Raises property changed events in response to row span change.
///
internal void OnRowSpanChanged(int oldValue, int newValue)
{
RaisePropertyChangedEvent(GridItemPatternIdentifiers.RowSpanProperty, oldValue, newValue);
}
//-------------------------------------------------------------------
//
// IGridProvider Members
//
//-------------------------------------------------------------------
#region IGridItemProvider Members
///
/// Returns the current row that the item is located at.
///
int IGridItemProvider.Row
{
get
{
return ((TableCell)Owner).RowIndex;
}
}
///
/// Returns the current column that the item is located at.
///
int IGridItemProvider.Column
{
get
{
return ((TableCell)Owner).ColumnIndex;
}
}
///
/// Return the current number of rows that the item spans.
///
int IGridItemProvider.RowSpan
{
get
{
return ((TableCell)Owner).RowSpan;
}
}
///
/// Return the current number of columns that the item spans.
///
int IGridItemProvider.ColumnSpan
{
get
{
return ((TableCell)Owner).ColumnSpan;
}
}
///
/// Returns the container that maintains the grid layout for the item.
///
IRawElementProviderSimple IGridItemProvider.ContainingGrid
{
get
{
if ((TableCell)Owner != null)
{
return ProviderFromPeer(CreatePeerForElement(((TableCell)Owner).Table));
}
else
{
return null;
}
}
}
#endregion IGridItemProvider Members
}
}
// 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
- SoapWriter.cs
- SerialPinChanges.cs
- FilePrompt.cs
- ToolBarButtonClickEvent.cs
- MouseEvent.cs
- DefaultValueAttribute.cs
- SynchronizingStream.cs
- SnapLine.cs
- DSASignatureFormatter.cs
- AuthStoreRoleProvider.cs
- IntSecurity.cs
- SecurityContext.cs
- ItemsPresenter.cs
- ExceptionTrace.cs
- TdsParserSessionPool.cs
- CommentAction.cs
- TypeResolver.cs
- MetadataArtifactLoaderCompositeFile.cs
- SoapObjectInfo.cs
- OleAutBinder.cs
- DuplexClientBase.cs
- EntityDataSourceDataSelectionPanel.designer.cs
- ViewCellRelation.cs
- DataGridViewRowCancelEventArgs.cs
- EntityCommandExecutionException.cs
- SoapHelper.cs
- ObjectItemCollection.cs
- ResourceLoader.cs
- CryptoApi.cs
- Knowncolors.cs
- AnonymousIdentificationModule.cs
- MissingManifestResourceException.cs
- DbProviderFactories.cs
- BitmapEffect.cs
- RectIndependentAnimationStorage.cs
- EntitySetBaseCollection.cs
- CharEnumerator.cs
- XPathDocumentNavigator.cs
- Substitution.cs
- PolyQuadraticBezierSegment.cs
- MailDefinition.cs
- recordstatescratchpad.cs
- GetWinFXPath.cs
- InvokeMethodActivity.cs
- SelectionRange.cs
- PeerCredentialElement.cs
- PageAsyncTaskManager.cs
- TextRangeEdit.cs
- DataMemberAttribute.cs
- TextDecorationCollectionConverter.cs
- DomainUpDown.cs
- XhtmlBasicTextViewAdapter.cs
- TokenBasedSet.cs
- xamlnodes.cs
- Double.cs
- DataObjectCopyingEventArgs.cs
- Logging.cs
- DocumentEventArgs.cs
- EditorPartCollection.cs
- IntSecurity.cs
- Function.cs
- RelationshipSet.cs
- PageStatePersister.cs
- FakeModelPropertyImpl.cs
- ComboBoxRenderer.cs
- SafeArchiveContext.cs
- TextSegment.cs
- RequestReplyCorrelator.cs
- BooleanExpr.cs
- DurableDispatcherAddressingFault.cs
- OperationParameterInfo.cs
- _RegBlobWebProxyDataBuilder.cs
- JsonDataContract.cs
- Point3DCollection.cs
- DataContractSerializer.cs
- SpAudioStreamWrapper.cs
- StreamReader.cs
- SiteMapNodeCollection.cs
- DoubleLinkList.cs
- GridSplitterAutomationPeer.cs
- GridViewRow.cs
- SponsorHelper.cs
- Debug.cs
- WebConvert.cs
- TrackingParameters.cs
- Translator.cs
- bidPrivateBase.cs
- TdsParserSafeHandles.cs
- ConfigXmlDocument.cs
- ToolStripScrollButton.cs
- _ConnectOverlappedAsyncResult.cs
- Connector.cs
- CharKeyFrameCollection.cs
- _SslStream.cs
- CDSCollectionETWBCLProvider.cs
- HttpClientCertificate.cs
- ProjectionPruner.cs
- ToolStripPanelRow.cs
- FrameworkContentElement.cs
- RegexMatchCollection.cs