Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / UIAutomation / Win32Providers / MS / Internal / AutomationProxies / WindowsListViewGroupSubsetLink.cs / 1 / WindowsListViewGroupSubsetLink.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: Win32 ListViewGroupSubsetLink proxy // // //--------------------------------------------------------------------------- using System; using System.ComponentModel; using System.Windows.Automation; using System.Windows.Automation.Provider; using System.Runtime.InteropServices; using System.Windows; using MS.Win32; namespace MS.Internal.AutomationProxies { //----------------------------------------------------- // // ListViewGroupSubsetLink // //----------------------------------------------------- // Proxy for List view Group Subset Link class ListViewGroupSubsetLink: ProxySimple, IInvokeProvider { //------------------------------------------------------ // // Constructors // //----------------------------------------------------- #region Constructor internal ListViewGroupSubsetLink (IntPtr hwnd, ProxyFragment parent, int item, int groupId) : base(hwnd, parent, item) { _cControlType = ControlType.Button; _sAutomationId = "ListviewGroupSubsetLink" + groupId; // This string is a non-localizable string _groupId = groupId; _fIsKeyboardFocusable = true; } #endregion Constructor //------------------------------------------------------ // // Pattern Implementation // //------------------------------------------------------ #region ProxySimple Interface // Returns a pattern interface if supported. internal override object GetPatternProvider (AutomationPattern iid) { if (iid == InvokePattern.Pattern) { return this; } return null; } // Gets the bounding rectangle for this element internal unsafe override Rect BoundingRectangle { get { NativeMethods.Win32Rect rect = new NativeMethods.Win32Rect(); rect.top = NativeMethods.LVGGR_SUBSETLINK; XSendMessage.XSend(_hwnd, NativeMethods.LVM_GETGROUPRECT, new IntPtr(0), new IntPtr(&rect), Marshal.SizeOf(rect.GetType())); Misc.MapWindowPoints(_hwnd, IntPtr.Zero, ref rect, 2); return rect.ToRect(false); } } // Is focus set to the specified item protected override bool IsFocused () { NativeMethods.LVGROUP_V6 groupInfo = new NativeMethods.LVGROUP_V6(); groupInfo.Init(Marshal.SizeOf(typeof(NativeMethods.LVGROUP_V6))); groupInfo.iGroupID = _groupId; groupInfo.mask = NativeMethods.LVGF_STATE; groupInfo.stateMask = NativeMethods.LVGS_SUBSETLINKFOCUSED; // Note: return code of GetGroupInfo() is not reliable. XSendMessage.GetGroupInfo(_hwnd, ref groupInfo); // ignore return code. return (groupInfo.state & NativeMethods.LVGS_SUBSETLINKFOCUSED) != 0; } //Gets the localized name internal override string LocalizedName { get { NativeMethods.LVGROUP_V6 group = new NativeMethods.LVGROUP_V6(); group.Init(Marshal.SizeOf(typeof(NativeMethods.LVGROUP_V6))); group.iGroupID = _groupId; group.cchSubsetTitle= Misc.MaxLengthNameProperty; return XSendMessage.GetItemText(_hwnd, group, NativeMethods.LVGF_SUBSET); } } #endregion ProxySimple Interface #region Invoke Pattern void IInvokeProvider.Invoke () { NativeMethods.Win32Point pt; if (GetClickablePoint(out pt, false)) { Misc.MouseClick(pt.x, pt.y); } } #endregion Invoke Pattern //----------------------------------------------------- // // Private Fields // //------------------------------------------------------ #region Private Fields // The group id this link belongs to private int _groupId; #endregion Private Fields } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: Win32 ListViewGroupSubsetLink proxy // // //--------------------------------------------------------------------------- using System; using System.ComponentModel; using System.Windows.Automation; using System.Windows.Automation.Provider; using System.Runtime.InteropServices; using System.Windows; using MS.Win32; namespace MS.Internal.AutomationProxies { //----------------------------------------------------- // // ListViewGroupSubsetLink // //----------------------------------------------------- // Proxy for List view Group Subset Link class ListViewGroupSubsetLink: ProxySimple, IInvokeProvider { //------------------------------------------------------ // // Constructors // //----------------------------------------------------- #region Constructor internal ListViewGroupSubsetLink (IntPtr hwnd, ProxyFragment parent, int item, int groupId) : base(hwnd, parent, item) { _cControlType = ControlType.Button; _sAutomationId = "ListviewGroupSubsetLink" + groupId; // This string is a non-localizable string _groupId = groupId; _fIsKeyboardFocusable = true; } #endregion Constructor //------------------------------------------------------ // // Pattern Implementation // //------------------------------------------------------ #region ProxySimple Interface // Returns a pattern interface if supported. internal override object GetPatternProvider (AutomationPattern iid) { if (iid == InvokePattern.Pattern) { return this; } return null; } // Gets the bounding rectangle for this element internal unsafe override Rect BoundingRectangle { get { NativeMethods.Win32Rect rect = new NativeMethods.Win32Rect(); rect.top = NativeMethods.LVGGR_SUBSETLINK; XSendMessage.XSend(_hwnd, NativeMethods.LVM_GETGROUPRECT, new IntPtr(0), new IntPtr(&rect), Marshal.SizeOf(rect.GetType())); Misc.MapWindowPoints(_hwnd, IntPtr.Zero, ref rect, 2); return rect.ToRect(false); } } // Is focus set to the specified item protected override bool IsFocused () { NativeMethods.LVGROUP_V6 groupInfo = new NativeMethods.LVGROUP_V6(); groupInfo.Init(Marshal.SizeOf(typeof(NativeMethods.LVGROUP_V6))); groupInfo.iGroupID = _groupId; groupInfo.mask = NativeMethods.LVGF_STATE; groupInfo.stateMask = NativeMethods.LVGS_SUBSETLINKFOCUSED; // Note: return code of GetGroupInfo() is not reliable. XSendMessage.GetGroupInfo(_hwnd, ref groupInfo); // ignore return code. return (groupInfo.state & NativeMethods.LVGS_SUBSETLINKFOCUSED) != 0; } //Gets the localized name internal override string LocalizedName { get { NativeMethods.LVGROUP_V6 group = new NativeMethods.LVGROUP_V6(); group.Init(Marshal.SizeOf(typeof(NativeMethods.LVGROUP_V6))); group.iGroupID = _groupId; group.cchSubsetTitle= Misc.MaxLengthNameProperty; return XSendMessage.GetItemText(_hwnd, group, NativeMethods.LVGF_SUBSET); } } #endregion ProxySimple Interface #region Invoke Pattern void IInvokeProvider.Invoke () { NativeMethods.Win32Point pt; if (GetClickablePoint(out pt, false)) { Misc.MouseClick(pt.x, pt.y); } } #endregion Invoke Pattern //----------------------------------------------------- // // Private Fields // //------------------------------------------------------ #region Private Fields // The group id this link belongs to private int _groupId; #endregion Private Fields } } // 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
- Regex.cs
- ProgressBar.cs
- InplaceBitmapMetadataWriter.cs
- PerformanceCounter.cs
- BindingWorker.cs
- NegatedCellConstant.cs
- PointCollection.cs
- XmlException.cs
- DropShadowBitmapEffect.cs
- UpdateException.cs
- ColorTranslator.cs
- FormatterServicesNoSerializableCheck.cs
- HandlerFactoryCache.cs
- DesignerEditorPartChrome.cs
- LinqTreeNodeEvaluator.cs
- GacUtil.cs
- HtmlControlPersistable.cs
- StateMachine.cs
- ListViewItemEventArgs.cs
- SvcMapFileSerializer.cs
- CommonGetThemePartSize.cs
- AsymmetricAlgorithm.cs
- QueueProcessor.cs
- GenericTypeParameterBuilder.cs
- SerializationInfo.cs
- GroupQuery.cs
- KnownColorTable.cs
- CodeMethodReturnStatement.cs
- HttpHostedTransportConfiguration.cs
- ReadOnlyObservableCollection.cs
- SelectionChangedEventArgs.cs
- Point3DIndependentAnimationStorage.cs
- DummyDataSource.cs
- CodeLabeledStatement.cs
- EntityProviderFactory.cs
- EmbeddedMailObjectCollectionEditor.cs
- UnSafeCharBuffer.cs
- XmlSchemaGroupRef.cs
- Speller.cs
- JpegBitmapDecoder.cs
- RequiredAttributeAttribute.cs
- PagerSettings.cs
- LineMetrics.cs
- RoleManagerEventArgs.cs
- XmlIncludeAttribute.cs
- SerializationHelper.cs
- XmlDocumentSurrogate.cs
- ParameterToken.cs
- ContextMenu.cs
- DataGridViewComboBoxCell.cs
- UserControl.cs
- UserValidatedEventArgs.cs
- ButtonChrome.cs
- EntityDataSourceMemberPath.cs
- DbConnectionPoolOptions.cs
- XmlEventCache.cs
- CommandDesigner.cs
- ComponentDispatcher.cs
- DateTimeFormatInfo.cs
- XmlNullResolver.cs
- Decimal.cs
- RectAnimationUsingKeyFrames.cs
- DataGridViewButtonCell.cs
- ResourceContainer.cs
- ExtensionMethods.cs
- _SpnDictionary.cs
- Stream.cs
- TdsParserHelperClasses.cs
- LocatorManager.cs
- StrongName.cs
- BinaryConverter.cs
- DESCryptoServiceProvider.cs
- XhtmlTextWriter.cs
- ApplicationProxyInternal.cs
- SqlCacheDependency.cs
- ColumnHeader.cs
- FocusTracker.cs
- SymLanguageVendor.cs
- SignerInfo.cs
- BitmapImage.cs
- InvalidAsynchronousStateException.cs
- ParameterReplacerVisitor.cs
- WebBrowserNavigatingEventHandler.cs
- ToReply.cs
- FunctionImportMapping.ReturnTypeRenameMapping.cs
- PlainXmlWriter.cs
- UserNameSecurityTokenProvider.cs
- MobileContainerDesigner.cs
- IMembershipProvider.cs
- OdbcInfoMessageEvent.cs
- Rectangle.cs
- EncodingFallbackAwareXmlTextWriter.cs
- WebBodyFormatMessageProperty.cs
- DetailsViewDeletedEventArgs.cs
- ToolStripPanelRow.cs
- ForeignKeyConstraint.cs
- ImageMetadata.cs
- ToolStripLabel.cs
- NotImplementedException.cs
- SplashScreenNativeMethods.cs