Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / System / Windows / Automation / Peers / TextBoxAutomationPeer.cs / 1 / TextBoxAutomationPeer.cs
using System; using System.Collections.Generic; 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.Controls.Primitives; using System.Windows.Interop; using System.Windows.Media; using System.Windows.Documents; using MS.Internal; using MS.Win32; namespace System.Windows.Automation.Peers { /// public class TextBoxAutomationPeer : TextAutomationPeer, IValueProvider { /// public TextBoxAutomationPeer(TextBox owner): base(owner) {} /// override protected string GetClassNameCore() { return "TextBox"; } /// override protected AutomationControlType GetAutomationControlTypeCore() { return AutomationControlType.Edit; } /// override public object GetPattern(PatternInterface patternInterface) { object returnValue = null; if(patternInterface == PatternInterface.Value) returnValue = this; if (patternInterface == PatternInterface.Text) { returnValue = new MS.Internal.Automation.TextAdaptor(this, ((TextBoxBase)Owner).TextContainer); } if (patternInterface == PatternInterface.Scroll) { TextBox owner = (TextBox)Owner; if (owner.ScrollViewer != null) { returnValue = owner.ScrollViewer.CreateAutomationPeer(); ((AutomationPeer)returnValue).EventsSource = this; } } return returnValue; } bool IValueProvider.IsReadOnly { get { TextBox owner = (TextBox)Owner; return owner.IsReadOnly; } } string IValueProvider.Value { get { TextBox owner = (TextBox)Owner; return owner.Text; } } void IValueProvider.SetValue(string value) { if(!IsEnabled()) throw new ElementNotEnabledException(); TextBox owner = (TextBox)Owner; if (owner.IsReadOnly) { throw new ElementNotEnabledException(); } if (value == null) { throw new ArgumentNullException("value"); } owner.Text = value; } // [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)] internal void RaiseValuePropertyChangedEvent(string oldValue, string newValue) { if (oldValue != newValue) { RaisePropertyChangedEvent(ValuePatternIdentifiers.ValueProperty, oldValue, newValue); } } // [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)] internal void RaiseIsReadOnlyPropertyChangedEvent(bool oldValue, bool newValue) { if (oldValue != newValue) { RaisePropertyChangedEvent(ValuePatternIdentifiers.IsReadOnlyProperty, oldValue, newValue); } } ////// Gets collection of AutomationPeers for given text range. /// internal override ListGetAutomationPeersFromRange(ITextPointer start, ITextPointer end) { return new List (); } } } // 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
- EntityTemplateFactory.cs
- ObservableDictionary.cs
- DetailsViewInsertEventArgs.cs
- PolyLineSegment.cs
- CounterSample.cs
- DrawingImage.cs
- Signature.cs
- ThreadPool.cs
- ReversePositionQuery.cs
- OleDbReferenceCollection.cs
- SafeProcessHandle.cs
- CheckBoxAutomationPeer.cs
- TcpHostedTransportConfiguration.cs
- WmlObjectListAdapter.cs
- SqlBulkCopyColumnMappingCollection.cs
- CornerRadius.cs
- Math.cs
- RPIdentityRequirement.cs
- DataExpression.cs
- AmbientProperties.cs
- TablePatternIdentifiers.cs
- ClientScriptItem.cs
- QuerySelectOp.cs
- DataGridDetailsPresenterAutomationPeer.cs
- KeyManager.cs
- WebPartManagerDesigner.cs
- StorageComplexPropertyMapping.cs
- DataGridViewRowsRemovedEventArgs.cs
- SettingsProviderCollection.cs
- TrackingDataItem.cs
- BuildProviderCollection.cs
- DesignerTextBoxAdapter.cs
- SequentialWorkflowHeaderFooter.cs
- grammarelement.cs
- IconConverter.cs
- SQLBytesStorage.cs
- ThemeDictionaryExtension.cs
- TextSelection.cs
- Visual3DCollection.cs
- ProgressBarRenderer.cs
- SmiTypedGetterSetter.cs
- SparseMemoryStream.cs
- ListControl.cs
- RotateTransform.cs
- OracleBinary.cs
- HtmlHead.cs
- CodeBlockBuilder.cs
- DataGridHeaderBorder.cs
- SectionUpdates.cs
- Quad.cs
- PropertyOverridesTypeEditor.cs
- CodeDirectoryCompiler.cs
- FacetDescription.cs
- StringUtil.cs
- DayRenderEvent.cs
- GradientStop.cs
- XComponentModel.cs
- Mappings.cs
- BindUriHelper.cs
- Rect3DConverter.cs
- HostVisual.cs
- UInt64Storage.cs
- ProtocolsConfigurationEntry.cs
- MetadataUtilsSmi.cs
- FileClassifier.cs
- ProcessInputEventArgs.cs
- XmlPreloadedResolver.cs
- LockedBorderGlyph.cs
- NativeStructs.cs
- FileResponseElement.cs
- _Rfc2616CacheValidators.cs
- PageAsyncTask.cs
- ListViewEditEventArgs.cs
- PageAction.cs
- SchemaTypeEmitter.cs
- EntityDataSourceDataSelectionPanel.cs
- WmlFormAdapter.cs
- Binding.cs
- MultiSelectRootGridEntry.cs
- ControlBindingsCollection.cs
- JsonEncodingStreamWrapper.cs
- KeyFrames.cs
- ADRole.cs
- HttpRawResponse.cs
- SHA384.cs
- SqlIdentifier.cs
- CodeDomLocalizationProvider.cs
- TrustManagerPromptUI.cs
- MulticastNotSupportedException.cs
- TimeSpanOrInfiniteConverter.cs
- RSACryptoServiceProvider.cs
- NonSerializedAttribute.cs
- DoubleUtil.cs
- InkCanvasSelectionAdorner.cs
- GuidTagList.cs
- DataSourceSelectArguments.cs
- ManagedWndProcTracker.cs
- JsonObjectDataContract.cs
- HeaderedItemsControl.cs
- TableRowsCollectionEditor.cs