Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Automation / Peers / ScrollBarAutomationPeer.cs / 1305600 / ScrollBarAutomationPeer.cs
using System; using System.Runtime.InteropServices; using System.Windows; using System.Windows.Automation.Provider; using System.Windows.Controls; using System.Windows.Controls.Primitives; using MS.Internal; using MS.Win32; namespace System.Windows.Automation.Peers { /// public class ScrollBarAutomationPeer : RangeBaseAutomationPeer { /// public ScrollBarAutomationPeer(ScrollBar owner): base(owner) { } /// override protected string GetClassNameCore() { return "ScrollBar"; } /// override protected AutomationControlType GetAutomationControlTypeCore() { return AutomationControlType.ScrollBar; } /// protected override Point GetClickablePointCore() { return new Point(double.NaN, double.NaN); } /// protected override AutomationOrientation GetOrientationCore() { return ((ScrollBar)Owner).Orientation == Orientation.Horizontal ? AutomationOrientation.Horizontal : AutomationOrientation.Vertical; } /// internal override void SetValueCore(double val) { double horizontalPercent = -1; double verticalPercent = -1; ScrollBar sb = Owner as ScrollBar; ScrollViewer sv = sb.TemplatedParent as ScrollViewer; if (sv == null) { base.SetValueCore(val); } else { if (sb.Orientation == Orientation.Horizontal) { horizontalPercent = (val / (sv.ExtentWidth - sv.ViewportWidth)) * 100; } else { verticalPercent = (val / (sv.ExtentHeight - sv.ViewportHeight)) * 100; } ScrollViewerAutomationPeer svAP = UIElementAutomationPeer.FromElement(sv) as ScrollViewerAutomationPeer; IScrollProvider scrollProvider = svAP as IScrollProvider; scrollProvider.SetScrollPercent(horizontalPercent, verticalPercent); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.Runtime.InteropServices; using System.Windows; using System.Windows.Automation.Provider; using System.Windows.Controls; using System.Windows.Controls.Primitives; using MS.Internal; using MS.Win32; namespace System.Windows.Automation.Peers { /// public class ScrollBarAutomationPeer : RangeBaseAutomationPeer { /// public ScrollBarAutomationPeer(ScrollBar owner): base(owner) { } /// override protected string GetClassNameCore() { return "ScrollBar"; } /// override protected AutomationControlType GetAutomationControlTypeCore() { return AutomationControlType.ScrollBar; } /// protected override Point GetClickablePointCore() { return new Point(double.NaN, double.NaN); } /// protected override AutomationOrientation GetOrientationCore() { return ((ScrollBar)Owner).Orientation == Orientation.Horizontal ? AutomationOrientation.Horizontal : AutomationOrientation.Vertical; } /// internal override void SetValueCore(double val) { double horizontalPercent = -1; double verticalPercent = -1; ScrollBar sb = Owner as ScrollBar; ScrollViewer sv = sb.TemplatedParent as ScrollViewer; if (sv == null) { base.SetValueCore(val); } else { if (sb.Orientation == Orientation.Horizontal) { horizontalPercent = (val / (sv.ExtentWidth - sv.ViewportWidth)) * 100; } else { verticalPercent = (val / (sv.ExtentHeight - sv.ViewportHeight)) * 100; } ScrollViewerAutomationPeer svAP = UIElementAutomationPeer.FromElement(sv) as ScrollViewerAutomationPeer; IScrollProvider scrollProvider = svAP as IScrollProvider; scrollProvider.SetScrollPercent(horizontalPercent, verticalPercent); } } } } // 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
- DetailsViewInsertedEventArgs.cs
- TypeListConverter.cs
- Permission.cs
- VisualBrush.cs
- Function.cs
- SocketPermission.cs
- ZipIOExtraFieldZip64Element.cs
- ColumnReorderedEventArgs.cs
- QilPatternFactory.cs
- Exceptions.cs
- GeneralTransform.cs
- WebPageTraceListener.cs
- LogSwitch.cs
- CachedBitmap.cs
- IdentityModelDictionary.cs
- BooleanToVisibilityConverter.cs
- GridView.cs
- InvalidWMPVersionException.cs
- PlatformNotSupportedException.cs
- ZipIOZip64EndOfCentralDirectoryLocatorBlock.cs
- ObjectQuery_EntitySqlExtensions.cs
- TextSelectionProcessor.cs
- ConfigurationSection.cs
- SingleAnimationUsingKeyFrames.cs
- ToolStripPanelRenderEventArgs.cs
- GridItem.cs
- TableLayoutCellPaintEventArgs.cs
- SHA384Managed.cs
- ParameterBuilder.cs
- XmlSchemaComplexContent.cs
- VarInfo.cs
- ObjectStateEntryDbDataRecord.cs
- GeneralTransform3DTo2D.cs
- Geometry.cs
- VirtualPathProvider.cs
- XmlSchemaAttributeGroup.cs
- UInt32Converter.cs
- EntityCommandCompilationException.cs
- RowsCopiedEventArgs.cs
- KoreanCalendar.cs
- ACE.cs
- TextSchema.cs
- CompilationUtil.cs
- safemediahandle.cs
- ClientRolePrincipal.cs
- EventSourceCreationData.cs
- SqlParameterCollection.cs
- XmlEntityReference.cs
- IQueryable.cs
- ContactManager.cs
- SiteMapNodeCollection.cs
- XmlHierarchicalDataSourceView.cs
- FloatSumAggregationOperator.cs
- CodeIdentifiers.cs
- CodePageUtils.cs
- FunctionDetailsReader.cs
- COM2PropertyDescriptor.cs
- CrossAppDomainChannel.cs
- SkewTransform.cs
- LinqMaximalSubtreeNominator.cs
- Italic.cs
- EdmScalarPropertyAttribute.cs
- TraceUtils.cs
- OneOfTypeConst.cs
- RowUpdatingEventArgs.cs
- DecoderNLS.cs
- SimpleRecyclingCache.cs
- ValueChangedEventManager.cs
- BitArray.cs
- ImageDrawing.cs
- ConnectorDragDropGlyph.cs
- ContentOperations.cs
- CryptoApi.cs
- ReferencedCategoriesDocument.cs
- XAMLParseException.cs
- TrackBar.cs
- RoutingBehavior.cs
- EventSourceCreationData.cs
- AggregationMinMaxHelpers.cs
- PackageDigitalSignatureManager.cs
- DnsCache.cs
- CheckBoxField.cs
- PointConverter.cs
- DbBuffer.cs
- ValueQuery.cs
- FormatterConverter.cs
- ColumnClickEvent.cs
- DoubleAnimationUsingPath.cs
- TextEditorTyping.cs
- DataControlFieldHeaderCell.cs
- ProcessHostMapPath.cs
- ColumnBinding.cs
- DataGridViewRowContextMenuStripNeededEventArgs.cs
- DesignTimeVisibleAttribute.cs
- ReturnEventArgs.cs
- ColorPalette.cs
- ArrayElementGridEntry.cs
- BufferedWebEventProvider.cs
- SqlGenericUtil.cs
- UTF7Encoding.cs