Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Framework / System / Windows / Automation / Peers / ButtonAutomationPeer.cs / 1 / 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; return null; } 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; return null; } 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
- FlowLayout.cs
- ThicknessKeyFrameCollection.cs
- NeutralResourcesLanguageAttribute.cs
- UnderstoodHeaders.cs
- Int32AnimationBase.cs
- OpenTypeLayout.cs
- CryptoProvider.cs
- CircleHotSpot.cs
- DataGridViewCellConverter.cs
- RegexFCD.cs
- PolyQuadraticBezierSegment.cs
- ObjectAnimationBase.cs
- ellipse.cs
- ResourceCategoryAttribute.cs
- SiteMapProvider.cs
- DataGridViewCellValueEventArgs.cs
- fixedPageContentExtractor.cs
- TargetPerspective.cs
- _NetRes.cs
- ScopeElementCollection.cs
- AxisAngleRotation3D.cs
- ComponentSerializationService.cs
- DeobfuscatingStream.cs
- _ContextAwareResult.cs
- DelegateTypeInfo.cs
- LookupBindingPropertiesAttribute.cs
- SecuritySessionSecurityTokenAuthenticator.cs
- _ProxyRegBlob.cs
- WindowsImpersonationContext.cs
- ContactManager.cs
- ItemsControlAutomationPeer.cs
- XmlElementAttributes.cs
- PermissionSetEnumerator.cs
- ScriptReference.cs
- EndpointDiscoveryMetadata11.cs
- PolicyManager.cs
- ShapingEngine.cs
- LabelExpression.cs
- DataGridBoolColumn.cs
- VideoDrawing.cs
- DecimalAnimation.cs
- dtdvalidator.cs
- DataGridColumnHeaderItemAutomationPeer.cs
- PerfCounterSection.cs
- DocumentSchemaValidator.cs
- OdbcConnectionOpen.cs
- COM2Properties.cs
- PropertyMappingExceptionEventArgs.cs
- PageVisual.cs
- XamlFigureLengthSerializer.cs
- CodeTryCatchFinallyStatement.cs
- StringArrayConverter.cs
- WindowsToolbarItemAsMenuItem.cs
- UnionCodeGroup.cs
- ResolveNameEventArgs.cs
- ButtonBaseAutomationPeer.cs
- WSHttpSecurity.cs
- EditorZone.cs
- TaskForm.cs
- SectionVisual.cs
- WebPartConnectionsCancelEventArgs.cs
- ValidatorCompatibilityHelper.cs
- TerminatorSinks.cs
- CompositeCollectionView.cs
- KeyTime.cs
- InputBindingCollection.cs
- IPAddressCollection.cs
- ConnectorDragDropGlyph.cs
- TextRange.cs
- Error.cs
- SecurityResources.cs
- ByteAnimation.cs
- StylusOverProperty.cs
- ILGenerator.cs
- BrowserTree.cs
- AgileSafeNativeMemoryHandle.cs
- HostedNamedPipeTransportManager.cs
- RestHandler.cs
- JavaScriptSerializer.cs
- EventLogTraceListener.cs
- XmlWriterTraceListener.cs
- EdmValidator.cs
- XhtmlBasicTextViewAdapter.cs
- StylusPointProperties.cs
- RegexWorker.cs
- PropertyReference.cs
- XmlEncoding.cs
- recordstatescratchpad.cs
- GridViewDeleteEventArgs.cs
- ResourceWriter.cs
- XsltArgumentList.cs
- TraceUtils.cs
- BitmapDownload.cs
- ProfileEventArgs.cs
- XmlCDATASection.cs
- ApplicationProxyInternal.cs
- Transform3DGroup.cs
- ModifiableIteratorCollection.cs
- ObjectAnimationBase.cs
- StackSpiller.Generated.cs