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
- KeySplineConverter.cs
- TextFormatterImp.cs
- TrustLevelCollection.cs
- ArrayHelper.cs
- SelectionHighlightInfo.cs
- XmlSchemaExternal.cs
- TextOnlyOutput.cs
- SqlDataSourceCommandEventArgs.cs
- RoutedEventValueSerializer.cs
- AnimatedTypeHelpers.cs
- FileClassifier.cs
- StrongNameUtility.cs
- DbParameterCollection.cs
- TrustLevel.cs
- DoubleAnimation.cs
- ByteStream.cs
- DesignTimeDataBinding.cs
- StringUtil.cs
- TaskDesigner.cs
- ListSortDescription.cs
- HasRunnableWorkflowEvent.cs
- DebugController.cs
- RecordManager.cs
- DeflateStream.cs
- RepeatBehavior.cs
- WindowsListViewItem.cs
- latinshape.cs
- XmlUtf8RawTextWriter.cs
- _SslStream.cs
- SqlWorkflowInstanceStoreLock.cs
- ColorContextHelper.cs
- PropertyPath.cs
- SpellCheck.cs
- WindowsMenu.cs
- ComponentResourceKey.cs
- ByteAnimation.cs
- SamlSerializer.cs
- SiteMap.cs
- DesignerCalendarAdapter.cs
- HashLookup.cs
- ParentQuery.cs
- Model3DGroup.cs
- DependencyPropertyAttribute.cs
- ProtocolsConfigurationHandler.cs
- IndexedWhereQueryOperator.cs
- TemplateFactory.cs
- MediaContext.cs
- QuaternionAnimation.cs
- Application.cs
- DecoderReplacementFallback.cs
- SplineKeyFrames.cs
- BindingSource.cs
- ToolStripRenderer.cs
- DesignerView.cs
- RefreshInfo.cs
- TransactionOptions.cs
- PermissionSetTriple.cs
- String.cs
- ColumnProvider.cs
- ContractReference.cs
- ResourceSetExpression.cs
- NameObjectCollectionBase.cs
- WsatServiceAddress.cs
- Error.cs
- ConfigurationStrings.cs
- DisplayInformation.cs
- OleDbError.cs
- ErrorHandlingAcceptor.cs
- NotifyCollectionChangedEventArgs.cs
- TextParaClient.cs
- Trace.cs
- ProgressChangedEventArgs.cs
- PageWrapper.cs
- _SSPISessionCache.cs
- Header.cs
- MultiPageTextView.cs
- SQLConvert.cs
- KeyNotFoundException.cs
- ResourceSetExpression.cs
- SystemException.cs
- AutomationPatternInfo.cs
- Table.cs
- TimerElapsedEvenArgs.cs
- Rect.cs
- ParallelTimeline.cs
- DefaultWorkflowTransactionService.cs
- ConfigurationManager.cs
- SqlDataSourceStatusEventArgs.cs
- BitmapEffectrendercontext.cs
- BaseParaClient.cs
- DbProviderFactory.cs
- ExceptionValidationRule.cs
- Win32.cs
- SafeNativeMethods.cs
- ImageListStreamer.cs
- GridEntryCollection.cs
- CellQuery.cs
- FileDialogCustomPlace.cs
- InstanceDataCollection.cs
- PtsContext.cs