Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Automation / Peers / ButtonAutomationPeer.cs / 1305600 / ButtonAutomationPeer.cs
using System; 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.Input; using System.Windows.Interop; using System.Windows.Media; using System.Windows.Threading; using MS.Internal; using MS.Win32; namespace System.Windows.Automation.Peers { /// public class ButtonAutomationPeer : ButtonBaseAutomationPeer, IInvokeProvider { /// public ButtonAutomationPeer(Button owner): base(owner) {} /// override protected string GetClassNameCore() { return "Button"; } /// override protected AutomationControlType GetAutomationControlTypeCore() { return AutomationControlType.Button; } /// override public object GetPattern(PatternInterface patternInterface) { if (patternInterface == PatternInterface.Invoke) return this; else return base.GetPattern(patternInterface); } void IInvokeProvider.Invoke() { if(!IsEnabled()) throw new ElementNotEnabledException(); // Async call of click event // In ClickHandler opens a dialog and suspend the execution we don't want to block this thread Dispatcher.BeginInvoke(DispatcherPriority.Input, new DispatcherOperationCallback(delegate(object param) { ((Button)Owner).AutomationButtonBaseClick(); return null; }), null); } } } // 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.Security; using System.Text; using System.Windows; using System.Windows.Automation.Provider; using System.Windows.Controls; using System.Windows.Input; using System.Windows.Interop; using System.Windows.Media; using System.Windows.Threading; using MS.Internal; using MS.Win32; namespace System.Windows.Automation.Peers { /// public class ButtonAutomationPeer : ButtonBaseAutomationPeer, IInvokeProvider { /// public ButtonAutomationPeer(Button owner): base(owner) {} /// override protected string GetClassNameCore() { return "Button"; } /// override protected AutomationControlType GetAutomationControlTypeCore() { return AutomationControlType.Button; } /// override public object GetPattern(PatternInterface patternInterface) { if (patternInterface == PatternInterface.Invoke) return this; else return base.GetPattern(patternInterface); } void IInvokeProvider.Invoke() { if(!IsEnabled()) throw new ElementNotEnabledException(); // Async call of click event // In ClickHandler opens a dialog and suspend the execution we don't want to block this thread Dispatcher.BeginInvoke(DispatcherPriority.Input, new DispatcherOperationCallback(delegate(object param) { ((Button)Owner).AutomationButtonBaseClick(); return null; }), null); } } } // 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
- Vars.cs
- XamlSerializerUtil.cs
- TransportOutputChannel.cs
- CookieParameter.cs
- ConfigXmlWhitespace.cs
- BufferedReadStream.cs
- Flowchart.cs
- MultipleViewProviderWrapper.cs
- ListViewUpdatedEventArgs.cs
- StringOutput.cs
- ExpressionTextBoxAutomationPeer.cs
- AutomationPropertyInfo.cs
- TileModeValidation.cs
- MouseGestureConverter.cs
- panel.cs
- DateRangeEvent.cs
- SoapDocumentServiceAttribute.cs
- DecoderExceptionFallback.cs
- ImageAnimator.cs
- PerformanceCounterPermissionEntry.cs
- CryptoApi.cs
- DataGridAutoGeneratingColumnEventArgs.cs
- ReceiveCompletedEventArgs.cs
- LogExtent.cs
- TimeoutValidationAttribute.cs
- QilScopedVisitor.cs
- TextRangeEditLists.cs
- ArithmeticException.cs
- BinaryObjectWriter.cs
- Int32.cs
- VerificationAttribute.cs
- StyleReferenceConverter.cs
- FileSystemInfo.cs
- UpdateProgress.cs
- CasesDictionary.cs
- Brush.cs
- StyleSelector.cs
- IxmlLineInfo.cs
- CustomAttributeFormatException.cs
- XmlNodeWriter.cs
- SqlGatherProducedAliases.cs
- TextSpan.cs
- NamespaceCollection.cs
- ServiceChannelProxy.cs
- HotSpot.cs
- BindableAttribute.cs
- Dispatcher.cs
- AppSecurityManager.cs
- URLIdentityPermission.cs
- Annotation.cs
- BitmapCache.cs
- GPPOINTF.cs
- ShaderEffect.cs
- _ConnectOverlappedAsyncResult.cs
- HttpHandler.cs
- CultureSpecificCharacterBufferRange.cs
- IntersectQueryOperator.cs
- TableLayoutCellPaintEventArgs.cs
- GeometryHitTestResult.cs
- DoubleCollection.cs
- WebPartCollection.cs
- Menu.cs
- DetailsViewRow.cs
- SoapHttpTransportImporter.cs
- CompilationSection.cs
- ImageButton.cs
- DefaultValueTypeConverter.cs
- Matrix3D.cs
- ResourceAttributes.cs
- TraceContextRecord.cs
- SQLInt16Storage.cs
- FontStretches.cs
- ListCardsInFileRequest.cs
- NumberFormatInfo.cs
- ExternalException.cs
- SqlMethodTransformer.cs
- EdmType.cs
- QueryResponse.cs
- HttpWebRequest.cs
- TextLineBreak.cs
- CredentialCache.cs
- DataViewSetting.cs
- Rules.cs
- SHA1Managed.cs
- BlockCollection.cs
- ColorDialog.cs
- CompatibleComparer.cs
- DataGridViewCellStyleConverter.cs
- NoResizeSelectionBorderGlyph.cs
- Soap12FormatExtensions.cs
- FragmentQueryProcessor.cs
- PropertyValue.cs
- Animatable.cs
- ServiceBehaviorAttribute.cs
- UxThemeWrapper.cs
- EpmSourcePathSegment.cs
- VersionedStreamOwner.cs
- StringWriter.cs
- HotSpot.cs
- ExeContext.cs