Class WinFormsFlavorElement
public class WinFormsFlavorElement : WinFormsBaseFlavorElement
- Inheritance
-
WinFormsFlavorElement
- Inherited Members
Constructors
WinFormsFlavorElement(IControlProxy)
protected WinFormsFlavorElement(IControlProxy proxy)
Parameters
proxyIControlProxy
WinFormsFlavorElement(IControlProxy, string)
protected WinFormsFlavorElement(IControlProxy proxy, string flavorName)
Parameters
proxyIControlProxyflavorNamestring
Properties
ControlType
public Type ControlType { get; }
Property Value
ElementRectangle
The client or screen rectangle of the flavor element depending on the value returned by IsClientRectangle.
public override Rectangle ElementRectangle { get; }
Property Value
Remarks
To be implemented by the deriving class.
Enabled
True if the element is enabled. If the element cannot be enabled or disabled, return true.
public override bool Enabled { get; }
Property Value
Remarks
To be implemented by the deriving class.
Handle
public override IntPtr Handle { get; }
Property Value
HasFocus
True if the element has the focus.
public override bool HasFocus { get; }
Property Value
Remarks
To be implemented by the deriving class.
Proxy
public IControlProxy Proxy { get; }
Property Value
- IControlProxy
Valid
True if the flavor element is still valid.
public override bool Valid { get; }
Property Value
Remarks
To be implemented by the deriving class.
Visible
True if the element is visible.
public override bool Visible { get; }
Property Value
Remarks
To be implemented by the deriving class.
Methods
CanReplace(FlavorElement)
Returns a value specifying if this flavor element can replace elem.
public override bool CanReplace(FlavorElement flavorElem)
Parameters
flavorElemFlavorElement
Returns
- bool
Trueif this flavor element can replaceelem, otherwisefalse.
Remarks
The base method returns true if this flavor element IsEqual(FlavorElement)
to elem.
EnsureVisible()
Ensures that the flavor element is visible.
public override bool EnsureVisible()
Returns
- bool
True if the operation was successful.
~WinFormsFlavorElement()
protected ~WinFormsFlavorElement()
Focus()
Focuses the flavor element, if possible.
public override void Focus()
GetAttributeValue(Element, string)
Needs to be implemented for attribute value read access.
public override object GetAttributeValue(Element element, string name)
Parameters
Returns
- object
The attribute value.
GetChildLineageFromPoint(Point, out FindRefineMode)
Returns a list of flavor elements that is the lineage to the flavor element at the specified screen location.
public override LinkedList<FlavorElement> GetChildLineageFromPoint(Point screenLocation, out FindRefineMode refineMode)
Parameters
screenLocationPointThe screen location to search at.
refineModeFindRefineModeCan be set to indicate that further searching is required.
Returns
- LinkedList<FlavorElement>
The lineage to the flavor element at the specified point as a list.
Remarks
The first element in the returned list is the direct child of this flavor element, the k-th element is the parent of the (k+1)-th element, and the last element is the actual flavor element at the specified screen location. Consequently, an empty list is to be returned if this element is the best fitting element at the requested point.
Returns null if the specified screenLocation is not within this
or one of its descendant elements.
GetDynamicDescriptors(out IList<AttributeDescriptor>, out IList<ActionDescriptor>)
Gets the descriptors for the dynamic attributes and actions that the element supports.
public override void GetDynamicDescriptors(out IList<AttributeDescriptor> attributes, out IList<ActionDescriptor> actions)
Parameters
attributesIList<AttributeDescriptor>The dynamic attributes that the element supports.
actionsIList<ActionDescriptor>The dynamic actions that the element supports.
Remarks
The default implementation returns empty lists for attributes and
actions. Any overriding method should fill the returned lists.
GetElementCapabilities(Element, out Role, out string[], out string)
Supplies the role, a list of capabilities and a preferred capability names to the caller. This method called when building a new element from the flavor element.
public override void GetElementCapabilities(Element parent, out Role role, out string[] capabilities, out string preferredCap)
Parameters
parentElementThe parent element of the element to be constructed. (for reference only)
roleRoleThe role the element should have.
capabilitiesstring[]The list of capabilities the element should have.
preferredCapstringThe preferred capability the element should have.
GetPropertyValue(BindingFlags, string)
public object GetPropertyValue(BindingFlags flags, string name)
Parameters
flagsBindingFlagsnamestring
Returns
GetRuntimeTokenValues()
Gets the runtime token values. This must be implemented by the flavors.
protected override object[] GetRuntimeTokenValues()
Returns
- object[]
A collection of objects representing a runtime token.
InvokeAction(Element, string, object[])
Needs to be implemented for element action invocation.
public override object InvokeAction(Element element, string name, object[] args)
Parameters
elementElementThe element instance used.
namestringThe name of the action (lowercased).
argsobject[]A list of invocation parameters.
Returns
InvokeMethod(BindingFlags, string, object[])
public object InvokeMethod(BindingFlags flags, string name, object[] args)
Parameters
flagsBindingFlagsnamestringargsobject[]
Returns
InvokeMethod(BindingFlags, string, object[], Duration)
public object InvokeMethod(BindingFlags flags, string name, object[] args, Duration timeout)
Parameters
flagsBindingFlagsnamestringargsobject[]timeoutDuration
Returns
InvokeRemotely(RemotelyInvokedDelegate, object)
public object InvokeRemotely(RemotelyInvokedDelegate deleg, object inputData)
Parameters
delegRemotelyInvokedDelegateinputDataobject
Returns
InvokeRemotely(RemotelyInvokedDelegate, object, Duration)
public object InvokeRemotely(RemotelyInvokedDelegate deleg, object inputData, Duration timeout)
Parameters
delegRemotelyInvokedDelegateinputDataobjecttimeoutDuration
Returns
IsAssignableFrom(Type, Type)
protected static bool IsAssignableFrom(Type t, Type c)
Parameters
Returns
SafeInvokeRemotely<T>(RemotelyInvokedDelegate, object)
public T SafeInvokeRemotely<T>(RemotelyInvokedDelegate deleg, object inputData)
Parameters
delegRemotelyInvokedDelegateinputDataobject
Returns
- T
Type Parameters
T
SetAttributeValue(Element, string, object)
Needs to be implemented for attribute value write access.
public override void SetAttributeValue(Element element, string name, object value)
Parameters
elementElementThe element instance used.
namestringThe name of the attribute (lowercased).
valueobjectThe attribute value to be set.
SetPropertyValue(BindingFlags, string, object)
public void SetPropertyValue(BindingFlags flags, string name, object value)
Parameters
flagsBindingFlagsnamestringvalueobject
UpdateWin32Handle()
protected void UpdateWin32Handle()