Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / UIAutomation / Win32Providers / MS / Internal / AutomationProxies / WindowsListViewGroupSubsetLink.cs / 1305600 / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Debug.cs
- DoubleAnimationUsingPath.cs
- MatrixTransform.cs
- ProgressChangedEventArgs.cs
- ExtensionSimplifierMarkupObject.cs
- PermissionListSet.cs
- IProvider.cs
- Int16KeyFrameCollection.cs
- X509SubjectKeyIdentifierClause.cs
- SmiEventStream.cs
- SqlGatherConsumedAliases.cs
- TextServicesLoader.cs
- InternalTypeHelper.cs
- CustomPopupPlacement.cs
- MultiSelectRootGridEntry.cs
- HttpHandlersInstallComponent.cs
- MimeFormatter.cs
- XmlCharType.cs
- AutomationElementCollection.cs
- GPPOINTF.cs
- ChangeDirector.cs
- FileChangesMonitor.cs
- Geometry3D.cs
- ContextConfiguration.cs
- RestHandler.cs
- TextDecorationLocationValidation.cs
- ToolboxBitmapAttribute.cs
- HealthMonitoringSection.cs
- MethodInfo.cs
- ChangeProcessor.cs
- prefixendpointaddressmessagefiltertable.cs
- XmlnsPrefixAttribute.cs
- OrthographicCamera.cs
- InProcStateClientManager.cs
- CompoundFileDeflateTransform.cs
- ObjectStateEntryOriginalDbUpdatableDataRecord.cs
- DataGridViewCellCollection.cs
- WebPartCloseVerb.cs
- ExpressionBuilder.cs
- DesignObjectWrapper.cs
- MetadataCache.cs
- NumberFormatInfo.cs
- CodeThrowExceptionStatement.cs
- PrinterSettings.cs
- dsa.cs
- GenericWebPart.cs
- XmlAutoDetectWriter.cs
- XmlIterators.cs
- WebServiceParameterData.cs
- Image.cs
- UserControlBuildProvider.cs
- XmlAttributeAttribute.cs
- ActiveXHost.cs
- StylusPointPropertyInfoDefaults.cs
- CatalogZoneBase.cs
- basevalidator.cs
- WebPartCatalogAddVerb.cs
- ErrorView.xaml.cs
- QueryResults.cs
- ADMembershipUser.cs
- EventLogPermissionEntryCollection.cs
- log.cs
- Lease.cs
- EmptyEnumerator.cs
- ConnectionPoint.cs
- DbConnectionOptions.cs
- FtpRequestCacheValidator.cs
- ExtentCqlBlock.cs
- SlotInfo.cs
- DPAPIProtectedConfigurationProvider.cs
- UpDownBase.cs
- Debugger.cs
- InputDevice.cs
- FontSourceCollection.cs
- ComponentEditorPage.cs
- CompositeFontInfo.cs
- TextEditorSelection.cs
- SQLUtility.cs
- PostBackOptions.cs
- HttpPostedFileWrapper.cs
- QualificationDataAttribute.cs
- SessionParameter.cs
- ExternalException.cs
- ResourceDescriptionAttribute.cs
- ProtocolsConfiguration.cs
- TimeoutValidationAttribute.cs
- AppendHelper.cs
- DateTimeOffsetAdapter.cs
- ValidatorCollection.cs
- ServiceOperationParameter.cs
- JsonFormatWriterGenerator.cs
- ThicknessKeyFrameCollection.cs
- TextEditorParagraphs.cs
- ImageButton.cs
- DataTemplateSelector.cs
- BrowserCapabilitiesCompiler.cs
- SqlIdentifier.cs
- GreenMethods.cs
- ConfigurationHelpers.cs
- HttpHandlerActionCollection.cs