Links

Control

Wisej.Web.Control
Namespace: Wisej.Web
Assembly: Wisej.Framework (3.2.0.0)
Base class for all Wisej controls.
C#
VB.NET
public class Control : IWisejControl, IWisejComponent, IBindableComponent, IWisejSerializable, IHasPropertyStore, IHasResponsiveProfiles, IDropTarget
Public Class Control
Inherits IWisejControl
Implements IWisejComponent, IBindableComponent, IWisejSerializable, IHasPropertyStore, IHasResponsiveProfiles, IDropTarget

Constructors

Control()

Initializes a new instance of the Control class.

Properties

AccessibleDescription

String: Returns or sets the description that will be reported to accessibility client applications. It is assigned to the "alt" attribute of the browser element. (Default: null)

AccessibleName

String: Returns or sets the name of the control for use by accessibility client applications. It is assigned to the "name" attribute of the browser element. (Default: null)

AccessibleRole

AccessibleRole: Returns or sets the accessible role of the control that will be reported to accessibility client applications. It is assigned to the "role" attribute of the browser element. (Default: Default)

AllowDrag

Boolean: Returns or sets whether the control can initiate a drag-drop operation. (Default: False)

AllowDrop

Boolean: Returns or sets whether the control can accept data that the user drags onto it. (Default: False)

Anchor

AnchorStyles: Returns or sets the edges of the container to which a control is bound and determines how a control is resized with its parent. (Default: Top, Left)

Anonymous

Boolean: Returns or sets whether the control receives pointer events. Anonymous controls let pointer events bubble to their parents. (Default: False)

AppearanceKey

String: Sets the appearance key for the theme engine. (Default: null)

BackColor

Color: Returns or sets the background color for the control.

BackgroundImage

Image: Returns or sets the background image displayed in the control. (Default: null)

BackgroundImageLayout

ImageLayout: Returns or sets the background image layout as defined in the ImageLayout enumeration. (Default: None)

BackgroundImageSource

String: Returns or sets the background image displayed in the control. (Default: null)

BecomingActiveControl

Boolean: Returns a flag indicating that the control is becoming the active control.

BindingContext

BindingContext: Returns or sets the BindingContext for the control.

Bottom

Int32: Returns the distance, in pixels, between the bottom edge of the control and the top edge of its container's client area.

Bounds

Rectangle: Returns or sets the size and location of the control including its non-client area, in pixels and relative to the parent control.

CanExecute

Boolean: Determines whether the control can execute a command.

CanFocus

Boolean: Returns whether the control can receive focus.

CanSelect

Boolean: Returns whether the control can be selected.

Capture

Boolean: Returns or sets whether the control has captured the mouse.

CausesValidation

Boolean: Returns or sets whether the control causes validation to be performed on controls that require to be validated when this control receives focus. (Default: True)

ClientEvents

ClientEventCollection: Returns a collection of client events and JavaScript listeners. You may attach multiple listeners to same event.
You can use this collection at design time or in code or through the listener methods:

ClientRectangle

Rectangle: Returns the client rectangle of the control.

ClientSize

Size: Returns or sets the height and width of the client area.

ContainsFocus

Boolean: Indicates whether the control, or one of its child controls, has the input focus.

ContextMenu

ContextMenu: Returns or sets the shortcut menu associated with the control. (Default: null)

Controls

ControlCollection: Returns the collection of controls contained within the control.

Created

Boolean: Returns a value indicating whether the control has been created.

CssClass

String: Returns or sets additional CSS class names to add to the widget.
Use this property to add or remove custom CSS classes that you may add to your application as standard css files or through the StyleSheet extender. You can assign multiple class names separated by a space and you can manage this property using the related methods:

CssStyle

String: Returns or sets the custom CSS styles to add to the widget.
You can use any CSS style string.
// set the border radius to 100% and make the control round.
this.button1.CssStyle = "border-radius:100%";

Cursor

Cursor: Returns or sets the cursor that is displayed when the mouse pointer is over the control. (Default: null)

DataBindings

ControlBindingsCollection: Returns the data bindings for the control.

DefaultBackColor

Color: Returns the default background color of the control.

DefaultFont

Font: Returns the default font of the control.

DefaultForeColor

Color: Returns the default background color of the control.

DisplayRectangle

Rectangle: Returns the rectangle that represents the virtual display area of the control.

Disposing

Boolean: Returns whether the control is in the process of disposing itself and child controls.

Dock

DockStyle: Returns or sets which control borders are docked to its parent control and determines how a control is resized with its parent. (Default: None)

Enabled

Boolean: Returns or sets whether the control can respond to user interaction.

EnableNativeContextMenu

Boolean: Enables or disables the browser's context menu.

Focusable

Boolean: Returns or sets whether the control can gain the focus. (Default: True)

Focused

Boolean: Returns a value indicating whether the control has input focus.

Font

Font: Gets or sets the font of the text displayed by the control.

ForeColor

Color: Returns or sets the text color of the control.

Handle

IntPtr: Returns the unique server-side id (handle) for this component.

HasChildren

Boolean: Returns whether the control contains any child control.

HasDataBindings

Boolean: Returns whether the control specifies data bindings.

HasResponsiveProfiles

Boolean: Check if the control defines any responsive profile without forcing the creation of the collection.

HasUserData

Boolean: Checks if the UserData dynamic object was created and has any value.

Height

Int32: Returns or sets the height of the control.

InitScript

String: Returns or sets an initialization script to execute when the widget is created (or reloaded) in the browser.
Use this property to add custom initialization JavaScript that is always executed when the client widget is created. The context (this) of the script is the instance of the widget. You can use the entire qooxdoo and wisej.js api. See #qx and wisej-js.
// change the background color of the internal label of the button widget.
this.button1.InitScript = "this.getChildControl('label').setBackgroundColor('red')";
// attach a JavaScript event handler.
this.textBox1.InitScript = @"this.addListener('keydown', function(e) {
if (e.getKeyIdentifier() == "PageDown") {
alert('You pressed PageDown.');
}
});
You may also use the init script to attach events to the widget or to its internal children. Event handlers can also be attached using the ClientEvents collection and the client events methods:

InvokeRequired

Boolean: Returns true when this control belogs to a session different than the currently executing thread.

IsDisposed

Boolean: Returns whether the control has been disposed.

IsHandleCreated

Boolean: Returns if the control has a server-side component id (handle) associated with it.

IsMirrored

Boolean: Returns whether the control is mirrored.

LayoutEngine

LayoutEngine: Returns the control's layout engine.

Left

Int32: Returns or sets the distance, in pixels, between the left edge of the control and the left edge of its container's client area.

Location

Point: Returns or sets the coordinates of the upper-left corner of the control relative to the upper-left corner of its container.

Margin

Padding: Returns or sets the space between controls.

MaximumSize

Size: Returns or sets the maximum size for the control.

MinimumSize

Size: Returns or sets the minimum size for the control.

ModifierKeys

Keys: Returns a value indicating which of the modifier keys (SHIFT, CTRL, and ALT) is in a pressed state.

MouseButtons

MouseButtons: Returns a value indicating which of the mouse buttons is in a pressed state.

MousePosition

Point: Returns the position of the mouse cursor in screen coordinates.

Movable

Boolean: Returns or sets whether the control can be moved by dragging.

Name

String: Gets or sets the name of the control.

Padding

Padding: Returns or sets padding within the control.

Parent

Control: Returns or sets the parent container of the control.

PreferredSize

Size: Returns the preferred size in which the control can fit.

ResizableEdges

AnchorStyles: Returns or sets the edges of the control that can be dragged to resize the control.

ResponsiveProfiles

ResponsiveProfileCollection: Returns the collection of responsive properties that have been set for this control.
Int32: Return the distance, in pixels, between the right edge of the control and the left edge of its container's client area.

RightToLeft

RightToLeft: Returns or sets whether the control's elements are aligned right-to-left to support RTL languages.
When set to Inherit, the control inherits the value of this property from its parent. However, when the control is a top-level control (i.e. Window, Page, Desktop), and the value is set to Inherit, the right-to-left mode is automatically retrieved from the current language.
The behavior of this property is configurable in Default.json setting the "rightToLeft" property to "true", "false", or "auto". The default is "auto", causing the value to be retrieved from the current language.

Selectable

Boolean: Returns or sets whether the text in the control can be selected in the browser by the user by dragging the pointer. [Since 2.5.22] (Default: False)
Not to be confused with Selectable, which corresponds to the Focusable property. When Selectable is set to true, the text of the control (i.e. a label or a button) can be highlighted in the browser and copied to the clipboard. It will also make the widget "focusable" but only in the browser.

ShowLoader

Boolean: Returns or sets whether the control is blocked by the ajax loader. (Default: False)

Size

Size: Returns or sets the height and width of the control.

States

String[]: Returns or sets additional theme states to the client widget.
Use this property to manage additional custom states that you may want to add to a widget. The state will update the visualization of the widget using the styles and properties set in the current theme and loaded theme mixins. You can also force the usage of built-in states. However, this property will not return the current states of the widget as updated by the client browser. It only returns the states set by the application.
// force the widget to update the UI as if it was hovered and focused.
this.button1.States = new [] { "hovered", "focused" };
// apply a custom state defined in a custom theme or theme mixing.
this.panel1.States = new [] { "alert" };
In addition to setting this property directly, you can also manage it using the related methods:

TabIndex

Int32: Returns or sets the tab order of the control within its container.

TabStop

Boolean: Returns or sets whether the user can give the focus to this control using the TAB key and the Focusable property is set to true. (Default: True)

Tag

Object: Returns or sets the object that contains data about the control. (Default: null)

Text

String: Returns or sets the text associated with this control. (Default: "")
When AllowHtml is set to true, the text can contain HTML content. If the text contains new lines (CRLF) but doesn't contain HTML elements (at least one "<") all CRLF are automatically substituted with "<BR/>".

ToolTipText

String: Returns or sets the tooltip text to show for this control. (Default: "")
When using ToolTipText property you can only set the ToolTip text and cannot change the default ToolTip icon set in the theme. To change the ToolTip icon you can either create a custom theme, or a theme mixin, or use the ToolTip extender and the ToolTipText property added by the extender. You can change the default ForeColor, AutomaticDelay, InitialDelay, AutoPopDelay, or enable HTML in ToolTipText by using a ToolTip extender also without setting the ToolTipText property added by the extender.

Top

Int32: Returns or sets the distance, in pixels, between the top edge of the control and the top edge of its container's client area.

TopLevelControl

Control: Returns the parent control that is not parented by another Form. Typically, this is the outermost Form that the control is contained in.

UserData

Object: Returns a dynamic object that can be used to store custom data in relation to this control.

UseWaitCursor

Boolean: Returns or sets whether to use the wait cursor for the current control and all child controls. (Default: False)

ValidationCancelled

Boolean: Returns a flag indicating that the validation has been canceled.

Visible

Boolean: Returns or sets whether the control and all its child controls are displayed.

WheelDelta

Int32: Returns a value indicating the wheel delta from the last wheel event.

Width

Int32: Returns or sets the width of the control.

Methods

AddClientEventListener(name, script)

Adds a new listener script to the event name to the client widget.
Parameter
Type
Description
name
String
Name of the client event to attach the listener to.
script
String
JavaScript code to execute when the event occurs.
Returns: Int32. An integer id that you can use to remove the listener from the event using RemoveClientEventListener or to retrieve the listener script code using GetClientEventListener.
The script will execute in the browser when the event name occurs. You can attach multiple listeners to the same event.

AddCssClass(name)

Adds the CSS class name to the widget element. If the class already exists in the CssClass it's not added.
Parameter
Type
Description
name
String
Name of the css class to add.
Returns: String. The new value of the CssClass property.

AddState(state)

Adds the specified theme state to the widget.
Parameter
Type
Description
state
String
Name of the custom state to add to the widget.
Returns: String[]. The new list of states stored in the States property.
You can also assign a new array of states to the States property.

BeginInvoke(method)

Executes the specified delegate asynchronously, in the context of the session that owns the control.
Parameter
Type
Description
method
Delegate
A delegate to a method that takes no parameters.
Returns: IAsyncResult. An IAsyncResult that represents the result of the BeginInvoke operation.

BeginInvoke(method, args)

Executes the specified delegate asynchronously, in the context of the session that owns the control, with the specified list of arguments.
Parameter
Type
Description
method
Delegate
A delegate to a method that takes no parameters.
args
Object[]
An optional array of objects to pass as arguments to the specified method.
Returns: IAsyncResult. An IAsyncResult that represents the result of the asynchronous call.

BringToFront()

Brings the control to the front of the z-order.

Call(function, args)

Runs the JavaScript function within the component's context in the browser.
Parameter
Type
Description
function
String
The name of the JavaScript function to execute.
args
Object[]
The arguments to pass to the function.

Call(function, callback, args)

Runs the JavaScript function within the component's context in the browser and returns the value to the callback method.
Parameter
Type
Description
function
String
The name of the JavaScript function to execute.
callback
Asynchronous callback method that receives the return value.
args
Object[]
The arguments to pass to the function.

CallAsync(function, args)

Asynchronously runs the JavaScript function within the component's context in the browser and returns an awaitable Task containing the value returned by the remote call.
Parameter
Type
Description
function
String
The name of the JavaScript function to execute.
args
Object[]
The arguments to pass to the function.
Returns: Task<Object>. An awaitable Task that represents the asynchronous operation.

CenterToParent()

Centers the position of the control within the bounds of the parent.

CenterToParent(horizontal, vertical)

Centers the position of the control within the bounds of the parent either horizontally, vertically or both.
Parameter
Type
Description
horizontal
Boolean
Center horizontally.
vertical
Boolean
Center vertically.

Contains(control)

Indicates whether the specified control is a child of this control.
Parameter
Type
Description
control
Control
The child Control to find.
Returns: Boolean. true if the specified control is a child of the control; otherwise, false.

CreateControl()

Creates and register this control and all its children.

DoDragDrop(data, allowedEffects)

Begins a drag-and-drop operation.
Parameter
Type
Description
data
Object
The data to drag.
allowedEffects
One of the DragDropEffects values.
Returns: DragDropEffects. A value from the DragDropEffects enumeration that represents the final effect that was performed during the drag-and-drop operation.

DoDragDrop(data, allowedEffects, imageSource)

Begins a drag-and-drop operation.
Parameter
Type
Description
data
Object
The data to drag.
allowedEffects
One of the DragDropEffects values.
imageSource
String
The name or URL for an image to use as the drag cursor.
Returns: DragDropEffects. A value from the DragDropEffects enumeration that represents the final effect that was performed during the drag-and-drop operation.

DoDragDrop(data, allowedEffects, imageSource, imageSize)

Begins a drag-and-drop operation.
Parameter
Type
Description
data
Object
The data to drag.
allowedEffects
One of the DragDropEffects values.
imageSource
String
The name or URL for an image to use as the drag cursor.
imageSize
Size
The size of the drag image specified in imageSource.
Returns: DragDropEffects. A value from the DragDropEffects enumeration that represents the final effect that was performed during the drag-and-drop operation.

DoDragDrop(data, allowedEffects, image)

Begins a drag-and-drop operation.
Parameter
Type
Description
data
Object
The data to drag.
allowedEffects
One of the DragDropEffects values.
image
Image
An Image to use as the drag cursor.
Returns: DragDropEffects. A value from the DragDropEffects enumeration that represents the final effect that was performed during the drag-and-drop operation.

DoDragDrop(data, allowedEffects, image, imageSize)

Begins a drag-and-drop operation.
Parameter
Type
Description
data
Object
The data to drag.
allowedEffects