Skip to main content

SalQuickTabs

Namespace: PPJ.Runtime.Windows.QO

Assembly: PPJ.Runtime.50 (5.0.0.0)

Hosts tab pages, associated sibling controls, and lazily created form pages.

public class SalQuickTabs : SalUserControl, IExtenderProvider

Example:

using PPJ.Runtime.Windows.QO;

var tabs = new SalQuickTabs();
tabs.TabSetup = "{Name=general;Label=General;Form=}";

Constructors

Instance member SalQuickTabs()

Initializes the tab frame, page setup, and selection event handlers.

Properties

Instance member Alignment

TabAlignment: Gets or sets the edge along which tab headers are arranged. (Default: Top)

Instance member Appearance

TabAppearance: Gets or sets the visual style of the tab headers. (Default: Normal)

Instance member DrawMode

TabDrawMode: Gets or sets the inner tab control's drawing mode. (Default: Normal)

Instance member ImageList

ImageList: Gets or sets the image list used by tab headers. (Default: null)

Instance member ItemSize

Size: Gets or sets the configured tab-header size in pixels.

Instance member Multiline

Boolean: Gets or sets whether headers can occupy multiple rows. (Default: False)

Changes recalculate the bounds of bound form pages.

Instance member PageRectangle

Rectangle: Gets the page display rectangle in pixels relative to the frame's parent.

Instance member RightToLeftLayout

Boolean: Gets or sets mirrored tab layout.

Until explicitly assigned, inherits the containing form's RightToLeftLayout setting.

Instance member SelectedIndex

Int32: Gets or sets the selected page index. (Default: 0)

During selection processing, the getter can expose the requested index. A nonnegative assignment also stores the initial selection; out-of-range assignments do not select a page.

Instance member SelectedTab

SalTabPage: Gets or sets the selected page in the inner tab control.

Instance member SizeMode

TabSizeMode: Gets or sets how the inner tab control sizes its headers. (Default: Normal)

Instance member TabControl

TabControl: Gets the inner platform tab control.

Instance member TabPages

SalTabPageCollection: Gets the collection that manages this frame's pages.

Instance member TabSetup

String: Gets or sets the initial page definitions and reloads changed definitions. (Default: "")

Each definition uses the format {Name=Name0;Label=Label0;Form=FormClass0}.

Instance member UseVisualStyleBackColor

Boolean: Gets or sets whether eligible pages use visual-style backgrounds. (Default: False)

Updates normal-appearance pages whose background is the default control color or transparent.

Methods

Instance member Add(bRedraw)

Appends an unnamed tab page.

ParameterTypeDescription
bRedrawSalBooleanWhether to request immediate redraw; ignored where the platform operation always updates.

Returns: SalNumber. The zero-based index of the new page.

Instance member AddPage(sTag, sForm, hWnd)

Registers a tab-name to form-class binding without creating the form.

ParameterTypeDescription
sTagSalStringThe internal tab name identifying a form binding.
sFormSalStringThe form class name used for later page creation.
hWndSalWindowHandleThe target control handle.

Returns: SalBoolean. False if the name is already bound; otherwise, true.

Example:

Create a named tab and register the form class that will supply its page content.

using PPJ.Runtime;
using PPJ.Runtime.Windows;
using System.Windows.Forms;
using PPJ.Runtime.Windows.QO;

public class CustomerPage : SalFormWindow
{
public CustomerPage()
{
Text = "Customer details";
}
}

public static class TabExample
{
public static bool AddCustomers(SalQuickTabs tabs)
{
// Use an empty tab control so index zero is the first page.
if (!tabs.AddPage(0, "customers"))
return false;
tabs.SetLabel(0, "Customers", true);
// Registration does not create CustomerPage immediately.
return tabs.AddPage("customers",
(SalString)typeof(CustomerPage).FullName, SalWindowHandle.Null);
}
}

Instance member AddPage(pageIndex, pageName)

Inserts a page and assigns its internal name.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.
pageNameSalStringThe internal page name.

Returns: SalBoolean. True if inserted; false for an invalid insertion index.

Example:

Insert the first page and set its display label independently of its internal name.

using PPJ.Runtime;
using PPJ.Runtime.Windows;
using System.Windows.Forms;
using PPJ.Runtime.Windows.QO;

public static class TabExample
{
public static bool AddCustomers(SalQuickTabs tabs)
{
// Use an empty tab control so index zero is the first page.
if (!tabs.AddPage(0, "customers"))
return false;
tabs.SetLabel(0, "Customers", true);
return true;
}
}

Instance member AddPageEx(pageIndex, pageName, imageFile, tooltip)

Inserts a named page with an optional image file and tooltip.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.
pageNameSalStringThe internal page name.
imageFileSalStringThe optional image-file path.
tooltipSalStringThe tab-header tooltip text.

Returns: SalBoolean. True after insertion; false for an invalid insertion index.

Image-loading errors propagate after the page is inserted.

Instance member ApplyFormPageChanges()

Sends the apply notification to every instantiated bound form page.

Returns: SalBoolean. True.

Instance member AssociateChild(pageIndex, child)

Adds a page name to a child control's tab associations.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.
childControlThe child control to associate or disassociate.

Returns: SalBoolean. True if associated or already associated; false for a null child or invalid page.

Instance member AttachWindow(pageIndex, form)

Binds an existing control to a tab and shows it when that tab is active.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.
formControlThe existing control to bind as page content.

Returns: SalBoolean. True if bound; false for an invalid page, null control, or existing binding.

Instance member BringToTop(nIndex, bRedraw)

Requests a page change after sending SAM_TabChange.

ParameterTypeDescription
nIndexSalNumberThe zero-based page index.
bRedrawSalBooleanWhether to request immediate redraw; ignored where the platform operation always updates.

Returns: SalBoolean. True if already selected or the request is applied; false for an invalid page or a veto.

A zero return from the message handler vetoes selection.

Instance member CancelMode()

Marks the current user-request processing as canceled.

Returns: SalBoolean. True.

Call while handling a tab-change request.

Instance member Clear(bRedraw)

Removes all tab pages.

ParameterTypeDescription
bRedrawSalBooleanWhether to request immediate redraw; ignored where the platform operation always updates.

Returns: SalBoolean. True.

Instance member ClearPages()

Closes or disposes all instantiated bound form pages and removes their bindings.

Returns: SalBoolean. True.

Instance member CreatePage(sTag)

Creates the form bound to a named tab if it has not already been created.

ParameterTypeDescription
sTagSalStringThe internal tab name identifying a form binding.

Returns: SalBoolean. False for a missing tab or empty form class; true after processing or if the page already exists.

Design mode creates a placeholder label. Runtime creation sends the page-initialization notification when a control is available.

Protected member CreatePageWindowAsChild(formName, left, top, right, bottom)

Creates a hidden form-page window as a child of the frame's parent.

ParameterTypeDescription
formNameStringThe form class name to instantiate.
leftSingleThe left coordinate in horizontal form units.
topSingleThe top coordinate in vertical form units.
rightSingleThe right coordinate in horizontal form units.
bottomSingleThe bottom coordinate in vertical form units.

Returns: SalWindowHandle. The handle returned by Sal.CreateWindowEx.

Instance member Delete(nIndex, bRedraw)

Removes a page at the supplied index.

ParameterTypeDescription
nIndexSalNumberThe zero-based page index.
bRedrawSalBooleanWhether to request immediate redraw; ignored where the platform operation always updates.

Returns: SalBoolean. True for a valid page index after applying the change; otherwise, false.

The redraw flag controls immediate refresh.

Instance member DestroyPage(sTag)

Removes a form-page binding and closes or disposes its instantiated control.

ParameterTypeDescription
sTagSalStringThe internal tab name identifying a form binding.

Returns: SalBoolean. True if the binding existed; otherwise, false.

Instance member DetachWindow(pageIndex)

Removes a tab's form binding without disposing the bound control.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.

Returns: SalWindowHandle. The detached control handle, or a null handle for an invalid page or missing binding.

Instance member DisablePage(pageIndex)

Disables a tab page.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.

Returns: SalBoolean. True for a valid page index after applying the change; otherwise, false.

Instance member DisassociateChild(pageIndex, child)

Removes a page name from a child control's associations.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.
childControlThe child control to associate or disassociate.

Returns: SalBoolean. True if processed or already unassociated; false for a null child or invalid page.

Protected member Dispose(disposing)

Detaches the static skin-change handler before base disposal.

ParameterTypeDescription
disposingBooleanWhether managed resources are being disposed.

Instance member Enable(nIndex, bEnable)

Sets whether a tab page is enabled.

ParameterTypeDescription
nIndexSalNumberThe zero-based page index.
bEnableSalBooleanTrue to enable the page; false to disable it.

Returns: SalBoolean. True for a valid page index after applying the change; otherwise, false.

Disabled pages are excluded from normal user selection.

Instance member EnablePage(pageIndex)

Enables a tab page.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.

Returns: SalBoolean. True for a valid page index after applying the change; otherwise, false.

Instance member FindLabel(sLabel)

Finds the first page whose Text exactly matches the supplied caption.

ParameterTypeDescription
sLabelSalStringThe page caption.

Returns: SalNumber. The zero-based index, or -1 if absent.

Instance member FindName(sName)

Finds the first page whose internal name exactly matches.

ParameterTypeDescription
sNameSalStringThe page name.

Returns: SalNumber. The zero-based index, or -1 if absent.

Instance member FindTabFrame(hWndForm)

Finds the first QuickTabs frame within a form's child traversal.

ParameterTypeDescription
hWndFormSalWindowHandleThe form in which to search for a tab frame.

Returns: SalWindowHandle. The frame handle, or a null handle if no frame or form is found.

Static member FromHandle(hWnd)

Resolves a SAL handle to an existing QuickTabs frame.

ParameterTypeDescription
hWndSalWindowHandleThe target control handle.

Returns: SalQuickTabs. The frame, or null if no control is found.

An incompatible control causes InvalidCastException.

Instance member GetActivePage()

Reads the active page index.

Returns: SalNumber. The GetTop result.

Instance member GetClicked()

Reads the index recorded for the current tab-click notification.

Returns: SalNumber. The clicked-tab index reported by the inner control.

Call during a click notification.

Instance member GetContentsBorderRect(nLeft, nTop, nRight, nBottom)

Reads docking-padding border offsets in form units, adding tab-header height to the top offset.

ParameterTypeDescription
nLeft by referenceSalNumberThe left bound or margin in form units; receives the value for getter methods.
nTop by referenceSalNumberThe top bound or margin in form units; receives the value for getter methods.
nRight by referenceSalNumberThe right bound or margin in form units; receives the value for getter methods.
nBottom by referenceSalNumberThe bottom bound or margin in form units; receives the value for getter methods.

Returns: SalBoolean. True.

Instance member GetContentsRect(nLeft, nTop, nRight, nBottom)

Reads the page display rectangle in form units relative to the frame's parent.

ParameterTypeDescription
nLeft by referenceSalNumberThe left bound or margin in form units; receives the value for getter methods.
nTop by referenceSalNumberThe top bound or margin in form units; receives the value for getter methods.
nRight by referenceSalNumberThe right bound or margin in form units; receives the value for getter methods.
nBottom by referenceSalNumberThe bottom bound or margin in form units; receives the value for getter methods.

Returns: SalBoolean. True.

Instance member GetContentsRectPixels(nLeftPixels, nTopPixels, nRightPixels, nBottomPixels)

Reads the page display rectangle in pixels relative to the frame's parent.

ParameterTypeDescription
nLeftPixels by referenceSalNumberReceives the left edge in pixels.
nTopPixels by referenceSalNumberReceives the top edge in pixels.
nRightPixels by referenceSalNumberReceives the right edge in pixels.
nBottomPixels by referenceSalNumberReceives the bottom edge in pixels.

Returns: SalBoolean. True.

Instance member GetControlTabPages(control)

Reads the tab-name association of a child control.

ParameterTypeDescription
controlControlThe child control whose tab association is read or changed.

Returns: String. The semicolon-separated names, or an empty string if unassociated.

Instance member GetCount()

Counts the frame's tab pages.

Returns: SalNumber. The page count.

Instance member GetLabel(nIndex, sLabel)

Reads the stored page label, retaining its mnemonic notation.

ParameterTypeDescription
nIndexSalNumberThe zero-based page index.
sLabel by referenceSalStringReceives the stored label for a valid index.

Returns: SalBoolean. True for a valid index; otherwise, false.

The output is unchanged for an invalid index.

Instance member GetMarginRect(nLeft, nTop, nRight, nBottom)

Reads the docking-padding margins in form units.

ParameterTypeDescription
nLeft by referenceSalNumberThe left bound or margin in form units; receives the value for getter methods.
nTop by referenceSalNumberThe top bound or margin in form units; receives the value for getter methods.
nRight by referenceSalNumberThe right bound or margin in form units; receives the value for getter methods.
nBottom by referenceSalNumberThe bottom bound or margin in form units; receives the value for getter methods.

Returns: SalBoolean. True.

Instance member GetName(nIndex, sName)

Reads a page's internal name into the output string.

ParameterTypeDescription
nIndexSalNumberThe zero-based page index.
sName by referenceSalStringReceives the page name for a valid index.

Returns: SalBoolean. True for a valid page index after applying the change; otherwise, false.

The output is unchanged for an invalid index.

Instance member GetPageIndex(pageName)

Finds a page by its internal name.

ParameterTypeDescription
pageNameSalStringThe internal page name.

Returns: SalNumber. The page index, or -1 if absent.

Instance member GetPageName(pageIndex)

Reads a page's internal name.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.

Returns: SalString. The name, or SalString.Null for an invalid page.

Instance member GetPageTitle(pageIndex)

Reads a page caption.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.

Returns: SalString. The caption, or SalString.Null for an invalid page.

Instance member GetPageWindow(sTag)

Gets the existing control bound to a tab name.

ParameterTypeDescription
sTagSalStringThe internal tab name identifying a form binding.

Returns: SalWindowHandle. The control handle, or a null handle if no binding or control exists.

Instance member GetPageWindow(pageIndex)

Gets a tab's bound control or the tab-page handle when no binding exists.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.

Returns: SalWindowHandle. The control/page handle, or a null handle for an invalid index or uninstantiated binding.

Instance member GetRowCount()

Counts the displayed tab-header rows.

Returns: SalNumber. The inner tab control's row count.

Instance member GetTooltip(pageIndex, tooltip, maxLength)

Copies a page tooltip truncated to the requested character count.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.
tooltip by referenceSalStringReceives the truncated tooltip for a valid index.
maxLengthSalNumberThe maximum tooltip character count.

Returns: SalNumber. The copied character count, or zero for an invalid page.

An invalid page leaves the output unchanged.

Instance member GetTop()

Reads the selected logical page index.

Returns: SalNumber. The page index, or -1 if no page is selected after initialization.

Before initialization, returns the configured initial index.

Instance member HidePage(pageIndex)

Hides a tab page.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.

Returns: SalBoolean. True for a valid page index after applying the change; otherwise, false.

Instance member HideWindow(hWnd)

Hides a control and keeps it hidden across tab changes.

ParameterTypeDescription
hWndSalWindowHandleThe target control handle.

Returns: SalBoolean. True if the control is found; otherwise, false.

Instance member HideWindowAndLabel(hWnd)

Hides a control and its label across tab changes.

ParameterTypeDescription
hWndSalWindowHandleThe target control handle.

Returns: SalBoolean. True if the control is found; otherwise, false.

Instance member IndexFromPoint(nX, nY)

Finds the header containing a point in this frame's client coordinates.

ParameterTypeDescription
nXSalNumberThe horizontal client coordinate in pixels.
nYSalNumberThe vertical client coordinate in pixels.

Returns: SalNumber. The header index, or -1 if no header contains the point.

Instance member InitializeFormPages()

Sends the initialization notification to every instantiated bound form page.

Returns: SalBoolean. True.

Instance member Insert(nIndex, bRedraw)

Inserts an unnamed page while preserving the selected numeric index.

ParameterTypeDescription
nIndexSalNumberThe zero-based page index.
bRedrawSalBooleanWhether to request immediate redraw; ignored where the platform operation always updates.

Returns: SalBoolean. True if inserted; false if the index is outside zero through the page count.

Instance member IsAssociatedWithTab(index, wnd)

Tests whether a control is associated with a tab page.

ParameterTypeDescription
indexSalNumberThe zero-based page index.
wndSalWindowHandleThe target control handle.

Returns: SalBoolean. True if associated; false for an invalid page, unresolved control, or missing association.

Instance member IsEnabled(nIndex)

Tests whether a valid tab page is enabled.

ParameterTypeDescription
nIndexSalNumberThe zero-based page index.

Returns: SalBoolean. True for an enabled page; false for an invalid or disabled page.

Instance member IsWindowVisible(hWnd)

Tests whether a control is present in the frame's explicitly hidden set.

ParameterTypeDescription
hWndSalWindowHandleThe target control handle.

Returns: SalBoolean. True if explicitly hidden; false if absent from the set or unresolved.

Despite the method name, true indicates that HideWindow registered the control as hidden.

Instance member Next()

Requests selection of the next valid tab.

Returns: SalNumber. The next-valid-tab index returned by the inner control.

Protected member OnFontChanged(e)

Raises the base font event and adjusts header height unless ItemSize was customized.

ParameterTypeDescription
eEventArgsThe drawing or lifecycle event data.

Protected member OnForeColorChanged(e)

Raises the base color event and copies the foreground color to the inner tab control.

ParameterTypeDescription
eEventArgsThe drawing or lifecycle event data.

Protected member OnHandleCreated(e)

Ensures the inner tab handle exists and initializes form-page bounds.

ParameterTypeDescription
eEventArgsThe drawing or lifecycle event data.

Adds a placeholder page in design mode when the collection is empty.

Protected member OnLayout(e)

Raises the base layout event and updates form-page layout or parent sizing callbacks.

ParameterTypeDescription
eLayoutEventArgsThe drawing or lifecycle event data.

Protected member OnLoad(e)

Completes tab initialization before raising the base Load event.

ParameterTypeDescription
eEventArgsThe event data.

At runtime prepares page layout and moves the frame behind sibling content.

Protected member OnParentChanged(e)

Moves the background-paint subscription from the previous parent to the new parent.

ParameterTypeDescription
eEventArgsThe drawing or lifecycle event data.

Protected member OnSizeChanged(e)

Raises the base size event and invalidates visible, undisposed associated controls at runtime.

ParameterTypeDescription
eEventArgsThe drawing or lifecycle event data.

Instance member PageCount()

Counts the tab pages.

Returns: SalNumber. The page count.

Instance member Prev()

Requests selection of the preceding valid tab.

Returns: SalNumber. The previous-valid-tab index returned by the inner control.

Instance member ProcessKeys(keyData)

Passes a key combination to the inner tab control.

ParameterTypeDescription
keyDataKeysThe key and modifier combination to process.

Returns: Boolean. True if the inner control marks the key event handled; otherwise, false.

Instance member Redraw()

Updates the inner tab control's display.

Returns: SalBoolean. True.

Instance member ReloadTabs()

Reloads the stored TabSetup definitions and refreshes the frame.

Returns: SalBoolean. True.

Instance member RemovePage(pageIndex)

Deletes a page and requests refresh.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.

Returns: SalBoolean. True for a valid page index after applying the change; otherwise, false.

Instance member RenamePage(pageIndex, pageName)

Changes a page's internal name and also its caption when the old caption equals the old name.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.
pageNameSalStringThe internal page name.

Returns: SalBoolean. True for a valid page index after applying the change; otherwise, false.

Instance member ResizePages()

Applies the supplied or stored bounds to instantiated form pages.

Returns: SalBoolean. True.

Instance member ResizePages(rect)

Applies the supplied or stored bounds to instantiated form pages.

ParameterTypeDescription
rectRectangleThe page bounds in pixels relative to their parent.

Returns: SalBoolean. True.

Instance member SendMsgToAssociated(nIndex, nMsg, wParam, lParam)

Sends a message to controls associated with a tab and their children in tab order.

ParameterTypeDescription
nIndexSalNumberThe zero-based page index.
nMsgSalNumberThe message identifier.
wParamSalNumberThe message's first numeric parameter.
lParamSalNumberThe message's second numeric parameter.

Returns: SalBoolean. False for a negative index; true after processing, including when no controls match.

The index must fit the association arrays.

Instance member SetActivePage(pageIndex)

Requests activation of a page through BringToTop.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.

Returns: SalBoolean. The BringToTop result.

Instance member SetControlTabPages(control, tabNames)

Associates a child control with named tabs and updates its visibility.

ParameterTypeDescription
controlControlThe child control whose tab association is read or changed.
tabNamesStringSemicolon-separated tab names, or null/empty to remove the association.

Null or empty names remove the association. The tab frame cannot be associated with itself.

Instance member SetCurrentPage(sTag)

Creates and shows the named bound form page, hiding the previous page.

ParameterTypeDescription
sTagSalStringThe internal tab name identifying a form binding.

Returns: SalBoolean. True.

The new page receives activation before the old page receives deactivation. An absent binding clears the current-page reference.

Instance member SetImage(nIndex, tResource)

Assigns a non-null image or image resource to a tab header.

ParameterTypeDescription
nIndexSalNumberThe zero-based page index.
tResourceSalResourceThe tab image resource.

Returns: SalBoolean. True if assigned; false for an invalid index, null image, or unsupported resource.

The image list entry is keyed by the page name. Null inputs leave the existing image unchanged.

Instance member SetImage(nIndex, image)

Assigns a non-null image or image resource to a tab header.

ParameterTypeDescription
nIndexSalNumberThe zero-based page index.
imageImageThe tab image.

Returns: SalBoolean. True if assigned; false for an invalid index, null image, or unsupported resource.

The image list entry is keyed by the page name. Null inputs leave the existing image unchanged.

Instance member SetImage(nIndex, icon)

Assigns a non-null image or image resource to a tab header.

ParameterTypeDescription
nIndexSalNumberThe zero-based page index.
iconIconThe tab icon.

Returns: SalBoolean. True if assigned; false for an invalid index, null image, or unsupported resource.

The image list entry is keyed by the page name. Null inputs leave the existing image unchanged.

Instance member SetLabel(nIndex, sLabel, bRedraw)

Changes the tab caption and processes embedded image-resource notation.

ParameterTypeDescription
nIndexSalNumberThe zero-based page index.
sLabelSalStringThe page caption.
bRedrawSalBooleanWhether to request immediate redraw; ignored where the platform operation always updates.

Returns: SalBoolean. True for a valid page index after applying the change; otherwise, false.

A resolved resource is assigned to the tab image.

Instance member SetName(nIndex, sName)

Changes a page's internal name and updates its form binding and active-page display.

ParameterTypeDescription
nIndexSalNumberThe zero-based page index.
sNameSalStringThe page name.

Returns: SalBoolean. True for a valid page index after applying the change; otherwise, false.

An existing form binding matching the new name is retained.

Instance member SetPageSize(nLeft, nTop, nRight, nBottom, bResize)

Stores the bounds used for bound form pages and optionally resizes them immediately.

ParameterTypeDescription
nLeftSalNumberThe left bound or margin in form units; receives the value for getter methods.
nTopSalNumberThe top bound or margin in form units; receives the value for getter methods.
nRightSalNumberThe right bound or margin in form units; receives the value for getter methods.
nBottomSalNumberThe bottom bound or margin in form units; receives the value for getter methods.
bResizeSalBooleanWhether to apply the bounds to existing pages immediately.

Returns: SalBoolean. True.

Instance member SetPageSize(rect, bResize)

Stores the bounds used for bound form pages and optionally resizes them immediately.

ParameterTypeDescription
rectRectangleThe page bounds in pixels relative to their parent.
bResizeSalBooleanWhether to apply the bounds to existing pages immediately.

Returns: SalBoolean. True.

Instance member SetPageTitle(pageIndex, pageTitle)

Changes a page caption without changing its internal name.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.
pageTitleSalStringThe caption displayed on the tab.

Returns: SalBoolean. True for a valid page index after applying the change; otherwise, false.

Instance member SetTooltip(pageIndex, tooltip)

Sets the tooltip displayed over a tab header.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.
tooltipSalStringThe tab-header tooltip text.

Returns: SalBoolean. True for a valid page index after applying the change; otherwise, false.

This does not change tooltip text on its content window.

Instance member SetWorkspaceBoundary(nMinWidth, nMinHeight)

Sets the minimum frame size from dimensions expressed in form units.

ParameterTypeDescription
nMinWidthSalNumberThe minimum width in horizontal form units.
nMinHeightSalNumberThe minimum height in vertical form units.

Returns: SalBoolean. True.

Instance member ShowPage(pageIndex)

Makes a tab page visible.

ParameterTypeDescription
pageIndexSalNumberThe zero-based page index.

Returns: SalBoolean. True for a valid page index after applying the change; otherwise, false.

Instance member ShowSiblings()

Updates associated child-control visibility for the selected tab.

Returns: SalBoolean. The result of updating sibling visibility.

Instance member ShowWindow(hWnd)

Removes a control from the explicit hidden set and applies its current-tab visibility.

ParameterTypeDescription
hWndSalWindowHandleThe target control handle.

Returns: SalBoolean. True if the handle resolves to a control; otherwise, false.

Instance member ShowWindowAndLabel(hWnd)

Removes a control and its label from the hidden set and reapplies tab visibility.

ParameterTypeDescription
hWndSalWindowHandleThe target control handle.

Returns: SalBoolean. True if the control is found; otherwise, false.

Instance member Update()

Refreshes the tab display through Redraw.

Returns: SalBoolean. True.

Protected member WndProc(m)

Handles transparent hit testing and clears form bindings when the native frame is destroyed.

ParameterTypeDescription
m by referenceMessageThe native message being dispatched.

Events

Instance member DrawControl

PaintEventHandler Occurs when the application draws the entire inner tab control.

Attaching before Load enables custom drawing at initialization.

Instance member DrawItem

DrawItemEventHandler Occurs when an individual tab header needs owner drawing.

Instance member SelectedIndexChanged

EventHandler Occurs after the selected tab changes.

Instance member SelectedIndexChanging

TabCancelEventHandler Occurs before tab selection changes and allows cancellation.

Implements

NameDescription
ISalWindowExposes SAL message dispatch and runtime metadata for child controls, forms, dialogs, and MDI windows.