Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Automation / Peers / ListBoxItemAutomationPeer.cs / 1305600 / ListBoxItemAutomationPeer.cs
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using System.Security;
using System.Text;
using System.Windows;
using System.Windows.Automation.Provider;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Interop;
using System.Windows.Media;
using MS.Internal;
using MS.Win32;
namespace System.Windows.Automation.Peers
{
///
public class ListBoxItemAutomationPeer : SelectorItemAutomationPeer, IScrollItemProvider
{
///
public ListBoxItemAutomationPeer(object owner, SelectorAutomationPeer selectorAutomationPeer)
: base(owner, selectorAutomationPeer)
{
}
///
override protected string GetClassNameCore()
{
return "ListBoxItem";
}
///
override protected AutomationControlType GetAutomationControlTypeCore()
{
return AutomationControlType.ListItem;
}
///
override public object GetPattern(PatternInterface patternInterface)
{
if (patternInterface == PatternInterface.ScrollItem)
{
return this;
}
return base.GetPattern(patternInterface);
}
///For ComboBoxItem for which peer is this element only, scrolling should happen when the pop-up is expanded.
internal override void RealizeCore()
{
ComboBox parent = ItemsControlAutomationPeer.Owner as ComboBox;
if (parent != null)
{
IExpandCollapseProvider iecp = (IExpandCollapseProvider)UIElementAutomationPeer.FromElement(parent) as ComboBoxAutomationPeer;
if (iecp.ExpandCollapseState != ExpandCollapseState.Expanded)
iecp.Expand();
}
base.RealizeCore();
}
void IScrollItemProvider.ScrollIntoView()
{
ListBox parent = ItemsControlAutomationPeer.Owner as ListBox;
if (parent != null)
parent.ScrollIntoView(Item);
else
{
ComboBoxAutomationPeer parentPeer = ItemsControlAutomationPeer as ComboBoxAutomationPeer;
if(parentPeer != null)
parentPeer.ScrollItemIntoView(Item);
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using System.Security;
using System.Text;
using System.Windows;
using System.Windows.Automation.Provider;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Interop;
using System.Windows.Media;
using MS.Internal;
using MS.Win32;
namespace System.Windows.Automation.Peers
{
///
public class ListBoxItemAutomationPeer : SelectorItemAutomationPeer, IScrollItemProvider
{
///
public ListBoxItemAutomationPeer(object owner, SelectorAutomationPeer selectorAutomationPeer)
: base(owner, selectorAutomationPeer)
{
}
///
override protected string GetClassNameCore()
{
return "ListBoxItem";
}
///
override protected AutomationControlType GetAutomationControlTypeCore()
{
return AutomationControlType.ListItem;
}
///
override public object GetPattern(PatternInterface patternInterface)
{
if (patternInterface == PatternInterface.ScrollItem)
{
return this;
}
return base.GetPattern(patternInterface);
}
///For ComboBoxItem for which peer is this element only, scrolling should happen when the pop-up is expanded.
internal override void RealizeCore()
{
ComboBox parent = ItemsControlAutomationPeer.Owner as ComboBox;
if (parent != null)
{
IExpandCollapseProvider iecp = (IExpandCollapseProvider)UIElementAutomationPeer.FromElement(parent) as ComboBoxAutomationPeer;
if (iecp.ExpandCollapseState != ExpandCollapseState.Expanded)
iecp.Expand();
}
base.RealizeCore();
}
void IScrollItemProvider.ScrollIntoView()
{
ListBox parent = ItemsControlAutomationPeer.Owner as ListBox;
if (parent != null)
parent.ScrollIntoView(Item);
else
{
ComboBoxAutomationPeer parentPeer = ItemsControlAutomationPeer as ComboBoxAutomationPeer;
if(parentPeer != null)
parentPeer.ScrollItemIntoView(Item);
}
}
}
}
// 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
- PrivilegeNotHeldException.cs
- DecodeHelper.cs
- TextBoxBase.cs
- basecomparevalidator.cs
- AuthenticationException.cs
- IMembershipProvider.cs
- ModelFunction.cs
- ExclusiveNamedPipeTransportManager.cs
- BindingOperations.cs
- SpellerStatusTable.cs
- SqlVersion.cs
- Grant.cs
- Win32.cs
- TaiwanLunisolarCalendar.cs
- DataSourceView.cs
- EntityFunctions.cs
- MappingException.cs
- RTLAwareMessageBox.cs
- HtmlInputButton.cs
- ClientScriptManager.cs
- Deflater.cs
- RoleGroup.cs
- TabletDevice.cs
- Int16KeyFrameCollection.cs
- BackoffTimeoutHelper.cs
- FrameworkTemplate.cs
- HostVisual.cs
- FloaterBaseParagraph.cs
- TimeSpan.cs
- RetriableClipboard.cs
- XPathBinder.cs
- TraceContext.cs
- SqlConnection.cs
- CompletionProxy.cs
- ContainerTracking.cs
- MILUtilities.cs
- HttpConfigurationContext.cs
- NetworkAddressChange.cs
- PropertyMapper.cs
- ConfigurationStrings.cs
- FastEncoder.cs
- XmlSerializationWriter.cs
- WindowsStatusBar.cs
- WpfMemberInvoker.cs
- SessionSwitchEventArgs.cs
- ConfigurationElement.cs
- InvalidOleVariantTypeException.cs
- DoubleAnimation.cs
- BitmapEffectDrawing.cs
- GlobalEventManager.cs
- CodeStatementCollection.cs
- AttachedAnnotationChangedEventArgs.cs
- CodeMethodInvokeExpression.cs
- CalendarKeyboardHelper.cs
- UriScheme.cs
- ObjectConverter.cs
- InternalConfigSettingsFactory.cs
- DataObjectSettingDataEventArgs.cs
- SessionSwitchEventArgs.cs
- DetailsViewCommandEventArgs.cs
- WebPartConnectionsConnectVerb.cs
- HttpCachePolicyElement.cs
- Debug.cs
- WebPartVerb.cs
- OdbcRowUpdatingEvent.cs
- Sql8ConformanceChecker.cs
- AudioFileOut.cs
- Material.cs
- NaturalLanguageHyphenator.cs
- SnapLine.cs
- CodeNamespaceCollection.cs
- ResourceKey.cs
- DecodeHelper.cs
- ServiceModelStringsVersion1.cs
- DuplexChannelBinder.cs
- _SingleItemRequestCache.cs
- BaseParser.cs
- _LoggingObject.cs
- StrokeNodeOperations2.cs
- WizardPanel.cs
- DocumentPageViewAutomationPeer.cs
- DataGridViewAutoSizeModeEventArgs.cs
- WpfKnownType.cs
- HttpStaticObjectsCollectionWrapper.cs
- DataSvcMapFile.cs
- BezierSegment.cs
- XmlDataSourceNodeDescriptor.cs
- SamlEvidence.cs
- MethodToken.cs
- TextEditorThreadLocalStore.cs
- FilterElement.cs
- SettingsBase.cs
- XmlQualifiedName.cs
- StringBuilder.cs
- ListItem.cs
- ColorKeyFrameCollection.cs
- ColorBlend.cs
- PathFigureCollection.cs
- CLRBindingWorker.cs
- SocketException.cs