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
- Span.cs
- ActivityStatusChangeEventArgs.cs
- SerialErrors.cs
- DataSourceBooleanViewSchemaConverter.cs
- ResumeStoryboard.cs
- WebPartMovingEventArgs.cs
- SymbolTable.cs
- MarkupExtensionReturnTypeAttribute.cs
- TypeConverterValueSerializer.cs
- CodeActivityContext.cs
- DataGridViewImageColumn.cs
- ScaleTransform.cs
- RelationshipEndMember.cs
- AttributeConverter.cs
- RootAction.cs
- CodeAccessPermission.cs
- MSAANativeProvider.cs
- FormatConvertedBitmap.cs
- EndpointNameMessageFilter.cs
- ExeContext.cs
- ScriptBehaviorDescriptor.cs
- TranslateTransform.cs
- SiteMapNodeItem.cs
- CustomBindingElement.cs
- EntitySet.cs
- MultiByteCodec.cs
- XmlValidatingReader.cs
- QuaternionKeyFrameCollection.cs
- DecoderExceptionFallback.cs
- XmlTypeMapping.cs
- QueryExpr.cs
- SoapAttributeAttribute.cs
- CookieProtection.cs
- FactoryMaker.cs
- GregorianCalendarHelper.cs
- DynamicDataResources.Designer.cs
- AmbientProperties.cs
- SqlDependencyUtils.cs
- EdmSchemaAttribute.cs
- ClientType.cs
- CriticalExceptions.cs
- SeekStoryboard.cs
- TextRunCache.cs
- _FtpControlStream.cs
- FieldTemplateUserControl.cs
- FrameworkReadOnlyPropertyMetadata.cs
- InstanceDataCollection.cs
- AttachedPropertyBrowsableAttribute.cs
- DataGridViewBand.cs
- CompiledQuery.cs
- PrinterSettings.cs
- SoapTypeAttribute.cs
- CustomValidator.cs
- SqlBuffer.cs
- Lasso.cs
- InternalDuplexChannelListener.cs
- DataExpression.cs
- PropertyAccessVisitor.cs
- CaseStatement.cs
- ProbeRequestResponseAsyncResult.cs
- EdmPropertyAttribute.cs
- XNameTypeConverter.cs
- Package.cs
- HostingPreferredMapPath.cs
- DesignerCategoryAttribute.cs
- WindowClosedEventArgs.cs
- SchemeSettingElement.cs
- PrintControllerWithStatusDialog.cs
- BuildTopDownAttribute.cs
- NumberSubstitution.cs
- EntityDesignerBuildProvider.cs
- HttpCookie.cs
- RuntimeHandles.cs
- HelpKeywordAttribute.cs
- DateTimeOffset.cs
- MenuItem.cs
- QuadraticBezierSegment.cs
- FontWeights.cs
- AdjustableArrowCap.cs
- SingletonChannelAcceptor.cs
- AppDomainCompilerProxy.cs
- NullableIntMinMaxAggregationOperator.cs
- LogLogRecord.cs
- messageonlyhwndwrapper.cs
- FixUpCollection.cs
- StyleTypedPropertyAttribute.cs
- HostingEnvironment.cs
- SecureUICommand.cs
- DropDownButton.cs
- XamlToRtfWriter.cs
- WebBrowserEvent.cs
- WebBrowserUriTypeConverter.cs
- Root.cs
- RegexCode.cs
- ParentUndoUnit.cs
- Operand.cs
- ResXResourceReader.cs
- Wow64ConfigurationLoader.cs
- RegexRunner.cs
- TypeUtils.cs