Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / 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
- DataSpaceManager.cs
- SoapServerMethod.cs
- StreamInfo.cs
- HtmlTable.cs
- LOSFormatter.cs
- AxisAngleRotation3D.cs
- WebFormDesignerActionService.cs
- TypeValidationEventArgs.cs
- ReadOnlyDictionary.cs
- TileBrush.cs
- WebPartConnectionCollection.cs
- ExpressionVisitorHelpers.cs
- RtfToXamlReader.cs
- TextCharacters.cs
- SvcMapFileSerializer.cs
- StrokeFIndices.cs
- DataServiceProviderWrapper.cs
- TransformCollection.cs
- ValidationHelper.cs
- ClosureBinding.cs
- TextSimpleMarkerProperties.cs
- Stroke.cs
- SourceLineInfo.cs
- Floater.cs
- TableColumnCollection.cs
- ProcessModuleDesigner.cs
- listitem.cs
- InstrumentationTracker.cs
- HuffmanTree.cs
- ResourceProperty.cs
- StreamSecurityUpgradeInitiatorAsyncResult.cs
- CompiledXpathExpr.cs
- TextTreeTextBlock.cs
- mediaeventargs.cs
- AccessedThroughPropertyAttribute.cs
- Win32Native.cs
- DrawListViewColumnHeaderEventArgs.cs
- SignerInfo.cs
- HandleExceptionArgs.cs
- TextStore.cs
- TextTreeUndo.cs
- PageStatePersister.cs
- HuffmanTree.cs
- SessionEndingEventArgs.cs
- HttpClientCertificate.cs
- ProgressBarBrushConverter.cs
- SafeMILHandle.cs
- DayRenderEvent.cs
- RepeatEnumerable.cs
- MdiWindowListItemConverter.cs
- AccessText.cs
- HashSetEqualityComparer.cs
- AbstractDataSvcMapFileLoader.cs
- TemplateBindingExpressionConverter.cs
- ZipIOExtraFieldElement.cs
- SafeFindHandle.cs
- XmlILConstructAnalyzer.cs
- ListenerSingletonConnectionReader.cs
- SqlDependencyListener.cs
- DurableInstancingOptions.cs
- HandleCollector.cs
- SendContent.cs
- FileLogRecordHeader.cs
- ClientSponsor.cs
- HexParser.cs
- SessionConnectionReader.cs
- Point3DAnimation.cs
- AppDomainFactory.cs
- HasCopySemanticsAttribute.cs
- ExpressionCopier.cs
- DropDownButton.cs
- DocumentSchemaValidator.cs
- WebPartCollection.cs
- Nodes.cs
- XmlArrayAttribute.cs
- SerialReceived.cs
- GetPageCompletedEventArgs.cs
- TreeViewItemAutomationPeer.cs
- SpeechRecognizer.cs
- Calendar.cs
- TableHeaderCell.cs
- WebScriptMetadataInstanceContextProvider.cs
- Label.cs
- GridViewRow.cs
- XsltException.cs
- RegistryKey.cs
- ScrollContentPresenter.cs
- TemplateColumn.cs
- XmlNamespaceDeclarationsAttribute.cs
- CommentEmitter.cs
- sqlcontext.cs
- BinaryObjectWriter.cs
- StylesEditorDialog.cs
- ListDictionary.cs
- MarkupExtensionParser.cs
- Matrix.cs
- XPathDocument.cs
- OneOfConst.cs
- EdmConstants.cs
- IChannel.cs