PPJ Manual
HomeCurrent IssuesDownloads
  • Welcome
  • Releases
    • PPJ 2023
  • PPJ 2023
  • PPJ Web API
  • PPJ Desktop API
  • Wisej.NET Documentation
  • General
    • Framework
      • Features
        • SAL and SQL Functions
        • Constants and Variables
        • SalContext
        • Visual Toolchest
        • XSal2
        • Reporting Support
        • LINQ Support
        • SalCompileAndEvaluate
        • Unicode Support
        • Startup Arguments
        • App.config
      • Data Types
        • Automatic Casts
        • Dynamic Arrays
      • Controls
        • ToolBar
        • TabControl
        • TableWindow
        • QuickObject
        • Ribbon Bar
        • NavigationBar
      • SQL Support
        • Configuration
        • ADO.NET Drivers
        • Bind and Into Variables
        • DBP Parameters
        • SqlContext
      • Extensions
        • Table Window
        • Unicode Support
        • Bug Fixes
        • Object Oriented Types
        • Custom Parsers
        • Named Properties
        • Microsoft Charts
        • Tabbed MDI
        • Watermark
        • HTML Rendering
      • Skins and Themes
        • Skin Files
        • Theme Files
        • Configuration
        • Skin Editor
        • Theme Builder
      • Tracing
        • Trace Viewer
        • Default Listeners
        • Tracing the Application
      • Spell Checker
        • Dictionaries
    • Ported Application
      • Project Structure
        • Late Bind Calls
        • Visual Styles
        • Unqualified References
        • Message Actions
        • When SQLError
        • Classes
      • Global Items
      • Forms
      • COM/ActiveX
      • Multiple Inheritance
      • Configuration Tool
      • Issues & Workarounds
    • Ported Reports
      • General
      • Crystal Reports
        • Structure
        • Unsupported Features
      • List & Label
        • Report Conversion
        • Structure
        • Document
        • Input Items
        • Passing Data
        • Unsupported Features
      • Reporting Services
        • Features
      • Stimulsoft
        • Break Groups
        • Fields
        • Formulas
        • Cache Mode
Powered by GitBook
On this page

Was this helpful?

  1. General
  2. Ported Application
  3. Project Structure

Visual Styles

Window's Visual Style mode can be enabled/disabled for all PPJ controls by setting the SalApplication.VisualStyles flag to true in the Main method when the application starts up.

When Visual Styles styles are on, there are some differences of behavior that need to be taken into account:

  • ListBox control generates the LBN_SELCHANGE notification when the mouse is clicked on the empty area. Therefore, with XP styles on, ListBox controls in ported applications receive a SAM_Click event when clicked on the empty area.

  • The TabControl used in SalQuickTabs, which is the native .NET TabControl that wraps Windows Common Controls, does not support the owner draw mode when XP styles are turned on, therefore disabled tabs cannot be painted as disabled. Additionally, if the orientation of the tabs is different from Top, the tabs are drawn in standard mode because XP does not support painting the tabs in any other orientation.

  • Buttons that should not get the focus, typically on a toolbar, do get the focus anyway when XP styles are turned on.

The SalApplication.VisualStyles flag can be overridden by using the startup switches /xp or /noxp or /visualstyles=on|off.

PreviousLate Bind CallsNextUnqualified References

Last updated 2 years ago

Was this helpful?