Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Automation / Peers / PasswordBoxAutomationPeer.cs / 1305600 / PasswordBoxAutomationPeer.cs
//---------------------------------------------------------------------------- // // File: PasswordBoxAutomationPeer.cs // // Copyright (C) Microsoft Corporation. All rights reserved. // // Description: The AutomationPeer for PasswordBox. // //--------------------------------------------------------------------------- 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.Internal.Automation; using MS.Win32; namespace System.Windows.Automation.Peers { /// public class PasswordBoxAutomationPeer : TextAutomationPeer, IValueProvider { ////// Constructor /// /// PasswordBox for which this is an AutomationPeer public PasswordBoxAutomationPeer(PasswordBox owner) : base(owner) { } ////// Class name for the type for which this is a peer. /// ///override protected string GetClassNameCore() { return "PasswordBox"; } /// /// Type for which this is a peer. /// ///override protected AutomationControlType GetAutomationControlTypeCore() { return AutomationControlType.Edit; } /// /// Return the patterns supported by PasswordBoxAutomationPeer /// /// ///override public object GetPattern(PatternInterface patternInterface) { object returnValue = null; if (patternInterface == PatternInterface.Value) { returnValue = this; } else if (patternInterface == PatternInterface.Text) { if (_textPattern == null) { _textPattern = new TextAdaptor(this, ((PasswordBox)Owner).TextContainer); } returnValue = _textPattern; } else if (patternInterface == PatternInterface.Scroll) { PasswordBox owner = (PasswordBox)Owner; if (owner.ScrollViewer != null) { returnValue = owner.ScrollViewer.CreateAutomationPeer(); ((AutomationPeer)returnValue).EventsSource = this; } } else { returnValue = base.GetPattern(patternInterface); } return returnValue; } /// /// Indicates whether or not this is a password control /// ///true override protected bool IsPasswordCore() { return true; } bool IValueProvider.IsReadOnly { get { return false; } } string IValueProvider.Value { get { throw new InvalidOperationException(); } } void IValueProvider.SetValue(string value) { if(!IsEnabled()) throw new ElementNotEnabledException(); PasswordBox owner = (PasswordBox)Owner; if (value == null) { throw new ArgumentNullException("value"); } owner.Password = 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 (); } private TextAdaptor _textPattern; } } // 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
- SQLByteStorage.cs
- RoutedEventHandlerInfo.cs
- UnaryOperationBinder.cs
- StorageEndPropertyMapping.cs
- BaseTreeIterator.cs
- CaseExpr.cs
- ProcessHostServerConfig.cs
- CodeNamespace.cs
- SqlCachedBuffer.cs
- DefinitionBase.cs
- _HelperAsyncResults.cs
- ToolStripPanelSelectionBehavior.cs
- TcpClientCredentialType.cs
- EventBuilder.cs
- DataColumnMapping.cs
- SystemInfo.cs
- UnitControl.cs
- SqlNotificationEventArgs.cs
- TreeNodeStyleCollection.cs
- ComponentGuaranteesAttribute.cs
- DataListItemCollection.cs
- BinarySerializer.cs
- InlinedAggregationOperatorEnumerator.cs
- mediapermission.cs
- JavascriptCallbackMessageInspector.cs
- ButtonRenderer.cs
- OutputCacheSection.cs
- Stackframe.cs
- Point3DKeyFrameCollection.cs
- AttributeCollection.cs
- CollectionType.cs
- DataSourceControlBuilder.cs
- CompositeTypefaceMetrics.cs
- TemplateKeyConverter.cs
- DependencyPropertyChangedEventArgs.cs
- TransformProviderWrapper.cs
- QueryTreeBuilder.cs
- DrawingContext.cs
- ScrollBarAutomationPeer.cs
- ParseChildrenAsPropertiesAttribute.cs
- DataBindingExpressionBuilder.cs
- TextTrailingWordEllipsis.cs
- PropertyGridView.cs
- NamedPermissionSet.cs
- AuthenticateEventArgs.cs
- AssertHelper.cs
- FrameworkElementFactory.cs
- PingOptions.cs
- HwndAppCommandInputProvider.cs
- DocumentXmlWriter.cs
- TemplateXamlParser.cs
- DrawingContextDrawingContextWalker.cs
- UnsignedPublishLicense.cs
- ObjectTokenCategory.cs
- BitmapMetadataBlob.cs
- GraphicsState.cs
- EntityChangedParams.cs
- HttpValueCollection.cs
- ComponentConverter.cs
- ValidatedControlConverter.cs
- DocumentPageView.cs
- counter.cs
- AutomationProperties.cs
- XsdDataContractExporter.cs
- DispatcherHooks.cs
- DBSqlParserTableCollection.cs
- ConfigurationLocation.cs
- UnknownBitmapEncoder.cs
- DataFormats.cs
- DataGridCaption.cs
- WinCategoryAttribute.cs
- ApplicationDirectory.cs
- TreeViewImageIndexConverter.cs
- ResXResourceSet.cs
- FunctionImportElement.cs
- BitmapCodecInfoInternal.cs
- webbrowsersite.cs
- SendingRequestEventArgs.cs
- ChineseLunisolarCalendar.cs
- TransformProviderWrapper.cs
- SchemaType.cs
- AttributeTable.cs
- StringAttributeCollection.cs
- HuffCodec.cs
- DispatchOperationRuntime.cs
- TrackBar.cs
- ActivationServices.cs
- BypassElementCollection.cs
- ProviderBase.cs
- MetadataPropertyCollection.cs
- ListItem.cs
- RelationshipConverter.cs
- CodeVariableReferenceExpression.cs
- WebConfigurationHostFileChange.cs
- CodeStatementCollection.cs
- ipaddressinformationcollection.cs
- WinFormsUtils.cs
- SystemIPv4InterfaceProperties.cs
- PropertyDescriptor.cs
- PixelShader.cs