Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / AccessibleTech / longhorn / Automation / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Nullable.cs
- EditingCoordinator.cs
- UrlAuthorizationModule.cs
- SqlBulkCopyColumnMapping.cs
- ResourceDisplayNameAttribute.cs
- PaginationProgressEventArgs.cs
- ModifierKeysValueSerializer.cs
- UndirectedGraph.cs
- DesignerHelpers.cs
- ListView.cs
- RsaElement.cs
- AvTrace.cs
- ScriptControl.cs
- ComponentChangedEvent.cs
- ProviderManager.cs
- TableSectionStyle.cs
- CommandLibraryHelper.cs
- SystemResourceHost.cs
- WebConvert.cs
- SapiAttributeParser.cs
- TextOutput.cs
- Win32.cs
- NativeRecognizer.cs
- ParameterModifier.cs
- JavaScriptObjectDeserializer.cs
- RootProfilePropertySettingsCollection.cs
- ToolStripProgressBar.cs
- LocalClientSecuritySettings.cs
- SignatureHelper.cs
- Rect.cs
- QilTernary.cs
- ReflectPropertyDescriptor.cs
- RuntimeHandles.cs
- BrowserCapabilitiesCodeGenerator.cs
- ByteAnimationUsingKeyFrames.cs
- TextFormatterHost.cs
- TableLayoutSettings.cs
- QueueProcessor.cs
- ImageMapEventArgs.cs
- EncoderParameter.cs
- PtsHost.cs
- PrimitiveXmlSerializers.cs
- DBPropSet.cs
- SubqueryRules.cs
- ProfileSettings.cs
- ReceiveContext.cs
- AttributeInfo.cs
- TreeNodeSelectionProcessor.cs
- WebPartsPersonalization.cs
- XhtmlBasicListAdapter.cs
- ContractValidationHelper.cs
- CopyNodeSetAction.cs
- TransactionFlowProperty.cs
- IdentityNotMappedException.cs
- UpWmlPageAdapter.cs
- ObjectDataSourceStatusEventArgs.cs
- GridViewCancelEditEventArgs.cs
- DescriptionAttribute.cs
- Encoding.cs
- PropertyDescriptor.cs
- CryptoKeySecurity.cs
- TemplateControl.cs
- EmbeddedMailObjectsCollection.cs
- CheckoutException.cs
- TrackingRecord.cs
- MetafileHeader.cs
- CodeDelegateInvokeExpression.cs
- StorageInfo.cs
- EventDrivenDesigner.cs
- InvalidProgramException.cs
- XmlSchemaIdentityConstraint.cs
- WebPart.cs
- WindowsGraphicsWrapper.cs
- LogEntrySerialization.cs
- Function.cs
- TemplateKey.cs
- CopyAction.cs
- BinaryObjectWriter.cs
- HttpConfigurationContext.cs
- Soap12ProtocolReflector.cs
- WindowsProgressbar.cs
- ECDsaCng.cs
- HMACSHA256.cs
- AnimationClockResource.cs
- XmlComplianceUtil.cs
- ProjectionCamera.cs
- ManifestBasedResourceGroveler.cs
- NonParentingControl.cs
- ConfigViewGenerator.cs
- ConfigurationStrings.cs
- DBCommand.cs
- TextDecorationCollection.cs
- GroupBoxAutomationPeer.cs
- ObjectSecurity.cs
- AsyncWaitHandle.cs
- SubstitutionList.cs
- ReversePositionQuery.cs
- GuidConverter.cs
- TrackingAnnotationCollection.cs
- UIElementIsland.cs