Welcome to EONTROL
Exontrol is devoted to create innovative user interface components for Windows applications, on /COM, /NET or /WPF platforms, since 1999. "eXontrol" comes from e(s)pecial (c)ontrol, where sc makes the X. Software development never stops. Neither do we. Our components are and will continue to be cutting edge development tools that adapt to the needs of our customers and to the changing software development environment. On this site you find components/tools/products/samples that are used in programming languages such as JavaScript, VB, VB.NET, VBA, C++, C#, X++, VFP, Access, Excel, Word, HTML, Delphi, Smalltalk, uniPaas (eDeveloper), Clarion, Dynamics AX, Dynamics NAV, xBasic, Visual Objects, Visual Dataflex, PowerBuilder, LabVIEW, Xbase++, AutoIt, Power++, FORTH, OpenEdge and so on...

The following movie shows the ImageSize feature

The ImageSize property allows you to change the default icon size from 16 to any other value. In other words, ability to specify the size for icons, check-box, radio-buttons, expand-collapse glyphs and so on. The Images method allows app to load icons from files, streams or BASE-64 encoded strings. The ImageSize property should be defined before the Images method, so the correct resolution for ICO is chosen. This feature will be available for all UI controls that support Images method.

The following movie shows the first-look of the newly eXComboBox/JS tool

The ExComboBox/JS tool allows you to display a drop-down panel (Bezier, Calendar, Gantt, Gauge, Menu, OrgChart, Pivot, RadialMenu, Schedule, ScrollBar, Surface, SwimLane Tree or any other HTML element) once the user clicks a button. For instance, you can select a different item from a drop-down tree or list control, or you can select a different date from a drop-down calendar control. The ExComboBox/JS is a HTML standalone-component, written in JavaScript, that uses no third-party libraries.

The following movie shows how you can do drag and drop between JavaScript components

The movie shows how you can implement drag and drop between JavaScript components. The drag and drop between HTML elements of the web page is possible by implementing the ExDrop(event, data) method. The event parameter holds information about the mouse/touch event once the element has been dropped. The data parameter holds information about the source-object that initiated the drag and drop operation, as an object of {object, source, client, shape} type.

The following movie shows how you can define hot-colors for ExTab component

The video shows how you can define the skin-object to highlight once the cursor hovers a page of the tab control. A tab control is analogous to the dividers in a notebook or the labels in a file cabinet. By using a tab control, an application can define multiple pages for the same area of a form or dialog box. Each page consists of a certain type of information or a group of controls that the application displays when the user selects the corresponding tab. The feature is available for /COM and /NET versions.

The following movie shows the first-look of the newly ExICalendar/JS control

The eXICalendar/JS library implements the ICalendar data format, according with Internet Calendaring and Scheduling Core Object Specification, RFC 5545, especially the RRULE property, which defines a rule or repeating pattern for recurring events, to-dos, journal entries, or time zone definitions. The recurrence rule, is used in computing the recurrence set. The recurrence set is the complete set of recurrence instances for a calendar component. The recurrence set is generated by considering the initial "DTSTART" property. The eXICalendar/JS is a HTML standalone-component, written in JavaScript, that uses no third-party libraries. You can check the new control here.
Jan30
ExTree, 19.0.0.2
*NEW: FilterBarCaption property supports expressions, and UI Column's Filter
*Added: The FilterBarCaption property supports expressions, so its evaluated value defines the HTML caption to be displayed on the control's filter bar. By default, the FilterBarCaption property is empty, so the control's automatically computes the filter bar's label based on the filter of each column. If no filter is selected, no filter label is generated. The FilterBarCaption property supports the following predefined keywords: value or current ( defines the control's current filter label, as it is displayed ), itemcount keyword returns the number of all items within the control, visibleitemcount keyword indicates the number of visible items within the control ( negative value indicates that the control has a filter applied, equivalent with the Items.VisibleItemCount property ), matchitemcount keyword indicates the number of items that currently matches the control's filter ( negative value indicates that the control has a filter applied, equivalent with the Items.MatchItemCount property ), promptpattern keyword specifies the currently pattern for the filter's prompt ( this is eligible, if the FilterBarPromptVisible property includes the exFilterBarPromptVisible flag ), available keyword returns a list of columns that are currently not filtered, but available to be filtered for ( Column.DisplayFilterButton property on True ) as a HTML string, allui keyword returns a HTML caption that includes all columns with Column.DisplayFilterButton property on True, including the value for each column's filter if it is filtered, all keyword returns a HTML caption that includes all columns including the value for each column's filter if it is filtered. For instance, FilterBarCaption = "`<r>` + value" aligns the filter bar's label to the right, the "value replace `[` with `<fgcolor=808080>[` replace `]` with `]</fgcolor>`" shows the column's name with a different color, "`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `<br>` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : ``)" displays the number of results in the control's filter bar and so on.
*Added: Ability to clear / select new filter value from the column's filter panel, if the user clicks the column's caption of the control's filter bar. The value, current, available, allui or all keyword of the FilterBarCaption property returns a HTML caption that includes the column's caption between [<b> and </b>] if the column is currently filtered ( shows as bold between brackets ), between <fgcolor=C0C0C0>[<s> and </s>]<fgcolor> if the column is not currently filtered ( shows in strikeout as gray between brackets ). The all, allui and available keywords uses the <fgcolor> </fgcolor> sequence (uncolored space) to separate the parts on the control's filter description. You can use predefined functions like replace to change the appearance of the column in the control's filter bar. For instance, "all replace `<s>` with `` replace `</s>` with ``" removes the strikeout effect for available and not-filtered columns, "allui replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></fgcolor></bgcolor>`" shows the filtered columns on white on a black background, "value + `<r>` + available replace `<fgcolor=C0C0C0>` with `<fgcolor=FF0000>`" shows the currently filter on the left, while the available filter on the right in red, 
*Added: The Items.MatchItemCount property retrieves the number of items that match the filter. If negative it indicates that a filter is applied, and its absolute value minus 1 specifies the count of items that match the filter criteria. If zero, no items are loaded into the control, and so no filter is applied. If positive, it indicates the total number of items within the control equivalent with the Items.ItemCount property. 
*Added: Items.VisibleItemCount property returns negative value, if the control has a filter applied. The negative value represents a formula of -( count + 1 ), where count indicates the number of matching items. For instance, if the Items.VisibleItemCount property returns -1, the count of matching items is 0, if -2, 1 matching item, if -3, 2 matching items, and so on.
ExFolderView, 17.0.0.1
*NEW: Template support (The Template/x-script code is a simple way of calling control/object's properties, methods/events using strings. Exontrol owns the x-script implementation in its easiest way and it does not require any VB engine to get executed. Our simple rule is using the component alone without any other dependency than the Windows system)
*Added: Template property, applies the giving x-script code
*Added: ExecuteTemplate property, executes a template and returns the result
Jan25
ExGantt, 19.0.0.1
*NEW: Data Binding support for /WPF assembly
*Added: DataSource property gets or sets the data source that the control is displaying data for. The DataContext/DataSource support of the control allows you to use the data-binding feature of the /WPF environment for our /WPF ex-controls. The DataSource property specifies the sub-set of DataContext the control should get data from. The DataSource property can be: DataTable, DataView, DataSet, DataViewManager, any component that implements the IListSource interface, or any component that implements the IList interface. The DataContext is the source of all entities mapped over a database connection. Once the DataSource property is set, the control automatically gets data based on the DataContext property.
*Added: DataTaskBegin property gets or sets the specific field in the data source to indicate the starting point of each added task. If missing or empty, no tasks are loaded during binding.
*Added: DataTaskEnd property gets or sets the specific field in the data source to indicate the ending point of each added task. If missing or empty, no tasks are loaded during binding. If the DataTaskEnd points to a DateTime object, it indicates the ending date of the newly bar, else, it indicates the duration of the task to be added. If the DataTaskEnd is equal with DataTaskBegin, a one-day task is added for each record found, during binding.
ExSlider, 21.0.0.1
*NEW: Ability to specify the size to show the icons within the control
*Added: ImageSize property specifies the size of the control' icons. By default, the ImageSize property is 16. The control's Images collection is cleared if the ImageSize property is changed, so it is recommended to set the ImageSize property before calling the Images method.
*Fixed: On some machines, the format keyword (within expression properties) provides more than 2 decimals for French(Canada) regional settings (for instance "12.3456 format ``" displays 12.3456 instead of 12.35)
Jan23
ExCalendar, 21.0.0.2
*NEW: Ability to specify the size to show the icons within the control
*Added: ImageSize property specifies the size of the control' icons. By default, the ImageSize property is 16. The control's Images collection is cleared if the ImageSize property is changed, so it is recommended to set the ImageSize property before calling the Images method. The ImageSize property specifies the size to show the icons using the Column.HeaderImage, Items.CellImage or Items.CellImages property, the cell's check-box or radio-button using the Column.Def(exCellHasCheckBox), Column.Def(exCellHasRadioButton), Items.CellHasCheckBox, Items.CellHasRadioButton property, the default-size of <img>number[:width]</img> tags within ex-html captions, unless the width is not specified, the size of expand/collapse glyphs, sorting icon (ascending or descending), drop-down or close filter button. The ImageSize property defines the size (width/height) of the icons within the control's Images collection. For instance, if the ICO file to load includes different types the one closest with the size specified by ImageSize property is loaded by Images method. Also, the ImageSize property defines the size to show the drop-down's check-box field. The ImageSize property does NOT change the height for the control's font.
*Added: Background(exMarkerColor) property specifies the color or the visual appearance to apply on dates with Marker property set

2023........................