About Actipro Universal Windows Studio for UWP

Build immersive Universal Windows apps.

Actipro Universal Windows Studio for UWP is a suite of all Actipro’s Universal Windows (UWP) products. It includes Charts - Visualize complex data with stunning charts, Micro Charts - Small charts, also called sparklines, designed to visualize complex data, SyntaxEditor - A syntax-highlighting code editor control and parsing suite and Shared Library - A set of common controls and useful components for UWP applications. Actipro's user interface controls are designed for use in any .NET-based Windows Store or Windows Phone app project.

Actipro Bar Code for UWP Features

  • Configurable Rendering - Actipro's bar codes include features not available on fontware such as textual value rendering, text intrusion, text alignment, bar height, bar/width ratio, optional borders, and more.
  • Checksums Supported - Each symbology automatically computes any appropriate checksum values so there is no maths that needs to be done manually by you.
  • Native Platform Support - This product is built in and designed for its target UI platform. All rendering is done using vectors so that the bar codes cleanly scale to any size and always looks crisp on your printouts.

Included Symbologies:

  • 2D Symbologies
    • QR Code
  • Linear Symbologies
    • EAN-13
    • EAN-8
    • UPC-A
    • UPC-E
    • Code 39
    • Code 39 Extended
    • Code 93
    • Code 93 Extended
    • Code 128
    • Codabar
    • Interleaved 2 of 5

Actipro Charts for UWP Features

Chart Types

  • Line Charts - A line chart renders quantitative data as a series of points connected by line segments. Lines can be straight, curved, or stepped. Markers can optionally be displayed based on type (such as first/last, high/low, negative, etc.).
  • Scatter Charts - Scatter charts render data points where each point is represented by a marker. Markers can use numerous built-in shapes or can be set to use custom shapes.
  • Area Charts - An area chart is a derivative of a line chart, where the area between the line and axis is filled in. As with line charts, areas can also be rendered using straight, curved, or stepped lines.
  • Stacked Area Charts - A stacked area chart combines multiple area series to represent cumulative totals. A 100% stacked area chart variant is also available, ensuring that the combined areas fill the chart, and that each area is representative of its percentage of the cumulative total.
  • Bar Charts - A bar chart displays rectangular bars with lengths proportional to the values they represent. Bar spacing can be set and the bars can be changed to render horizontally instead.
  • Stacked Bar Charts - A stacked bar chart combines multiple bar series to represent cumulative totals. A 100% stacked bar chart variant is also available, ensuring that the combined bars fill the chart, and that each area is representative of its percentage of the cumulative total.
  • Pie/Donut Charts - A pie chart displays data as a series of pie slices, making up a whole 'pie'. The value of each data point is represented by the size of each pie slice. A donut chart is similar to a pie chart, but with a hole in the center.

Data Sources

  • Multiple Series - Multiple series can be shown on a single chart. XY charts can share the same axes, or use different scales entirely. The visibility of each series can easily be toggled on and off. Pie charts can show multiple pie series as concentric rings.
  • Easy Data Binding - Bind to any IEnumerable as your data source. Simple charts can bind directly to date or numeric value collections. More complex objects or other data can be bound using property paths.
  • Data Aggregation - Data aggregation limits the number of data points rendered on-screen, for both increased performance and easier viewing. Several aggregation modes are available, and fine tune how many points are shown in relation to the size of the chart.
  • Bar Chart Slots - Group bar chart data by interval, allowing multiple data points to sum into single bars. Bar charts with string or complex type data can group data by equality, or custom logic. Groups can be labeled and sorted using custom logic as well.

Appearance

  • Legends - Legends provide context for each series or pie slice. Their appearance and position are fully customizable.
  • Labels - Labels show the value of any given data point or pie slice. XY chart labels can be set to always show, or only when the mouse is moved nearby.
  • Axes - Axes display XY chart data scales. Major and minor ticks can be drawn at desired intervals, and labels and titles and be added.
  • Grid Lines/Stripes - Grid lines and stripes make it easy to reference a given data point against values on an axis. They can be shown or hidden on each axis, and customized with the color of your choice.
  • Ranges - Ranges highlight a range of values on a single axis. Multiple ranges can be shown on an XY chart at the same time.
  • Palettes - There are over 15 built-in color palettes for series display, ready for use. Or provide your own, allowing you to style charts however you like.

Actipro Docking & MDI for UWP Features

  • Visual Studio-Like UI - The appearance and run-time behavior of window dragging, tabs, auto-hide popups, context menus, resize splitters, dock guides, etc. is all inspired by the popular Visual Studio user interface.
  • Docking Windows - Windows can be docked, attached (to create a tab group), floated, auto-hidden, or moved to an optional MDI area. Complex resizable hierarchies of tool and document windows can be created.
  • Tabbed MDI - In tabbed MDI each tab represents a document that can be reordered or moved between tab groups. Tabbed MDI documents can be floated into their own full-featured floating dock host.
  • Standard MDI - In Standard MDI each document is represented by a Window-like control that can be moved, resized, minimized, or maximized. Cascade and tile operations are built-in.
  • Auto-Hide - A tab group of tool windows that is docked can be unpinned to enter an auto-hide state. When in this state, tabs for each tool window appear on the outer edges of the layout.
  • Dock Guides - When dragging windows around, dock guides are displayed with the valid drop locations, and a drop target shows the resulting bounds. There is full control over which drop locations are allowed.
  • Switchers - Switchers appear when pressing keys like Ctrl+Tab and allow you to quickly navigate to an open docking window via the keyboard. They can also display descriptions about each docking window.
  • Fluid Animated Effects - Quick subtle animations are used throughout the product. Tab dragging uses smooth animation, dock guides and drop targets pop into place, and auto-hide popups slide in and out.
  • Layout Persistence - The docking layout and its windows can be set up in XAML or programmatically-created. In addition, the end user's layout customizations can be saved and later restored between app sessions.
  • MVVM Support - Docking windows can be specified explicitly, or automatically generated by binding to a list of custom view models.
  • Reusable Controls - Several controls are included that can be reused stand-alone in your apps, such as one that behaves like a resizable window, and an advanced tab control that has tons of features not found in standard tab controls.
  • Drag and Drop Tabs - Drag and drop tabs to quickly reorder them within their container. Drag them to any other location within the dock site to dock them, or keep them floating above it.
  • Workspace Content - While most applications have tool windows that surround a workspace with a MDI area, any kind of custom content can be inserted into the workspace in place of a MDI area.
  • Tool Window Inner-Fill - When there is no workspace within a dock site, the tool window hierarchy fills the entire docking layout. This mode is useful for apps that want their UI to be made completely of tool windows.
  • Nested Dock Sites - Dock sites can be nested in other dock sites, such as in document and tool windows. For example, a document window in the outer dock site can have its own inner dock site that contains tool windows.
  • Linked Dock Sites - One or more dock sites can be linked with other dock sites in your app, including ones in separate top-level windows. When dock sites are linked, docking windows can be interactively dragged between them.

Actipro Editors for UWP Features

Edit Boxes for .NET Types - Specialized edit boxes have been created for Brush, Byte, Color, CornerRadius, Date, DateTime, Double, Enum, Guid, Int16, Int32, Int32Rect, Int64, Point, Rect, Single, Size, Thickness, Time, TimeSpan and Vector data entry.

  • Easy Value Entry - Type values directly into edit boxes, use arrow keys to increment them, or show the drop-down to select a value from one of many unique value pickers.
  • Cycling Values - Edit box values can typically be incremented or decremented using the up/down arrow keys or the mouse wheel. Page Up/Down can also adjust larger step values.
  • Moving Between Parts - Some edit boxes have multiple part values (e.g. hour, minutes, seconds). The left/right arrow keys move between parts and select the entire value for efficient data entry.
  • Min/Max Values - Minimum and maximum values can be specified for most of the edit boxes. For aggregate types with multiple part values (e.g. Rect), you can restrict each part.
  • Placeholder Text - All edit boxes support null values as an option for when the edit box is cleared. Placeholder text can appear in the edit area to prompt the user for values.
  • Auto-Complete TextBox - The AutoCompleteBox control is a TextBox that also has a popup for presenting a list of suggested items as values are typed. Suggested items can be filtered and highlighted.
  • Masked TextBox - The MaskedTextBox control is a powerful TextBox that can restrict user input based on a regular expression or wildcard pattern, intelligently prompting for masked characters.
  • Country and Currency - The country and currency ComboBox controls are pre-populated with ISO country and currency data that can be filtered however you require.
  • Month Calendar - Select one or more dates using MonthCalendar, a customizable control with animated view transitions, day name and week number display options, and disabled day support.
  • Rating - The Rating control renders glyphs that can be used to present or collect a user rating. The glyphs are customizable and support two orientations.
  • Gradient Stop Slider - The GradientStopSlider control is specialized to support modifying the stops within a gradient brush. Double-click to add, drag to reorder, and drag away to remove a slot.

Value Pickers - Value pickers are specialized input panels for various data types, generally used in edit box drop-downs.

  • Color - Colors are picked via a radial hue slider and saturation/brightness square, or RGB values are entered directly. Alpha transparency can optionally be input as well.
  • Brush - Solid and gradient Brush values are supported with a picker that combines the Color selection interface with a gradient stop slider for managing stops.
  • Enumeration - Quickly select values for both flags and non-flags enum types. Flags enums allow for multiple value selection and grouping of related items.
  • Number - Numerical data types (e.g. Int32, Double) can utilize a radial slider for quick value selection or buttons to step the value.
  • Calculator - Numerical data types have an alternate calculator interface where numeric results can be generated by common mathematical operations.
  • Date - Dates can be selected via a month calendar control with fluent animations between month, year, decade, and century views.
  • Time - Time values can be selected via two radial sliders with a familiar design similar to a standard analog clock.
  • Tabbed Parts - Aggregate types with multiple part values (e.g. Rect, TimeSpan) have a tabbed interface to access an appropriate picker for each part.

Interoperability - All controls can be used standalone or easily integrated into various other usage scenarios.

  • Property Grid - Editors can be automatically injected as property editors within PropertyGrid for comprehensive natural data entry.
  • Data Grid - Integrate editors with a DataGrid to provide user-friendly input and presentation of data values for individual data columns in the grid.
  • Standalone Usage - The control appearances align with other native controls, allowing them to be dropped right into an app and be instantly approachable by end users.

Actipro Micro Charts for UWP Features

Chart Types

  • Line Charts - A line chart renders quantitative data as a series of points connected by line segments. Lines can be straight, curved, or stepped. Markers can optionally be displayed based on type (such as first/last, high/low, negative, etc.).
  • Scatter Charts - Scatter charts render data points where each point is represented by a marker. Markers can use numerous built-in shapes or can be set to use custom shapes.
  • Area Charts - An area chart is a derivative of a line chart, where the area between the line and axis is filled in. As with line charts, areas can also be rendered using straight, curved, or stepped lines.
  • Stacked Area Charts - A stacked area chart combines multiple area series to represent cumulative totals. A 100% stacked area chart variant is also available, ensuring that the combined areas fill the chart, and that each area is representative of its percentage of the cumulative total.
  • Bar Charts - A bar chart displays rectangular bars with lengths proportional to the values they represent. Bar spacing can be set and the bars can be changed to render horizontally instead.
  • Stacked Bar Charts - A stacked bar chart combines multiple bar series to represent cumulative totals. A 100% stacked bar chart variant is also available, ensuring that the combined bars fill the chart, and that each area is representative of its percentage of the cumulative total.
  • Win/Loss Charts - A win/loss chart is a bar chart with an 'absolute view' where any positive value renders as a full-height upward bar, any negative value renders as a full-height downward bar, and zero values render as a line in the middle.
  • Combined - A micro chart can contain multiple series, even series of differing types. For instance a line series can be plotted on top of a bar series. The combination of multiple kinds of series can help make data visualization even more attractive.

Other Controls

  • Box Plots - A box plot visualizes key statistical measures for a data set, such as the median, mean and quartile values.
  • Bullet Graphs - A bullet graph is a special kind of bar chart used to display a single value in a context of one or more related values.
  • Candlestick Charts - Candlestick charts are designed to visualize a change in value over an interval of time, and as such are excellent at showing price movements in stocks, currency values, or securities such as bonds.
  • Heat Maps - A heat map is a type of chart that displays a data value matrix represented through markers of varying colors and/or sizes. The gradient used to determine the color to render for any given value is fully customizable.
  • Segment Charts - A segment chart provides a visual representation of an integer value in relation to a total number. Each segment in the chart is rendered as highlighted or unhighlighted. This sort of chart is great for use on dashboards, and also as an indicator of steps or progress achieved.
  • Trend Indicators - The trend indicator is a three state control that is intended to reflect whether a numeric value is higher, the same as, or lower than an origin value. This is very useful to indicate stock price changes for example.

Data Sources

  • Multiple Series - Multiple series can be shown on a single chart. XY charts can share the same axes, or use different scales entirely. The visibility of each series can easily be toggled on and off. Pie charts can show multiple pie series as concentric rings.
  • Easy Data Binding - Bind to any IEnumerable as your data source. Simple charts can bind directly to date or numeric value collections. More complex objects or other data can be bound using property paths.
  • Data Aggregation - Data aggregation limits the number of data points rendered on-screen, for both increased performance and easier viewing. Several aggregation modes are available, and fine tune how many points are shown in relation to the size of the chart.

Appearance

  • Hot Tracking - Hot tracking displays a customizable tooltip which contains the values of the data point closest to the end-user's mouse cursor.
  • Baseline - The customizable baseline value determines what the chart considers 'positive' and 'negative' values, and can be optionally displayed.
  • Markers - Markers (first, last, high, low, negative, etc.) are small bullets that mark the location of data points in a chart.
  • Ranges - Specific value ranges of the chart can be highlighted horizontally or vertically to convey additional information to the end-user.
  • Palettes - There are over ten built-in color palettes for series display, ready for use. Or provide your own, allowing you to style charts however you like.
  • Series Visibility - The visibility of any series can be set so that it is either displayed or hidden from view.

Actipro SyntaxEditor for UWP Features

Actipro SyntaxEditor for UWP is designed for use in online IDE (integrated development environment) applications, however there are many other applications out there than can take advantage of such a control. Over 20 sample languages are included to get you started (such as C#, HTML, Javascript, and more), and optional premium add-ons with advanced functionality for editing C#, VB, XML, and JavaScript are available as well. For developers who need to support editing other code languages, custom syntax languages can be developed and distributed with your applications. Actipro offers a unique parser framework with SyntaxEditor that features grammars written in C#/VB using EBNF-like notation, customizable AST construction, advanced error handling/reporting, easy code injection, a complete debugger UI, and much more. It's also simple to integrate any external parser with SyntaxEditor.

  • Syntax Highlighting - Highlighting styles can be completely customized by the end user for each code language. SyntaxEditor comes with syntax highlighting for over 25 languages.
  • Code Outlining (Folding) - The end user can collapse ranges of text defined by the language. A small adornment represents the collapsed text, and hovering over it shows the contained text.
  • Selection Modes - While standard continuous selection mode is generally used, a special block selection mode is available that supports simultaneous editing of multiple lines.
  • Indicators - Indicators are special 'tagged' regions of text that display a glyph in the indicator margin and optionally highlight the text range with special styles. Text range-based (e.g. breakpoint) and line-based (e.g. bookmarks) indicators are supported.
  • Adornments - A powerful adornment layer system allows for any sort of custom UI elements (images, shapes, and even controls) to be added anywhere within the text area. Easily add squiggle lines, background highlights, or any other decoration to text.
  • Search (Find/Replace) - A flexible search API is built into the control with the ability to highlight matches. End users can use incremental search to search without UI, or the search view control that has a ready-to-go find/replace user interface.
  • Word Wrap - When word wrap is enabled, long lines will wrap at the editor view's edge to a new line so that all text can be visible without horizontal scrolling.
  • Single-Line Mode - An optional single-line mode renders the control like a regular TextBox, but with all the syntax-highlighting, selection, IntelliPrompt, and other features that make SyntaxEditor great.
  • Split Views - Split the editor into multiple resizable views so that different portions of the same document can be viewed and edited in the same editor control.
  • Undo and Redo - Edits to a document are tracked in undo and redo stacks, allowing an end user to backtrack to an earlier version of the document's text.
  • Block Indent/Outdent - Select multiple lines and press Tab to block indent them to the next tab stop, or Shift+Tab to outdent them.
  • Visible Whitespace - Tab and space characters can optionally be represented by glyphs that show which character generated whitespace.
  • Delimiters - Languages can easily support delimiter (bracket) highlighting and delimiter auto-completion.
  • Drag and Drop - Drag and drop text within the editor view, or externally to/from other applications where you can determine the drop's textual representation.
  • Margins - Line number, outlining, selection, ruler, and word wrap editor view margins ship with the control. Custom margins can be created as well.
  • Printing - Built-in dialogs support configurable document printing. Document title, line number, word wrap glyph, and page number margins are included.
  • Bi-Di Editing and IME - All text is edited in Unicode characters and bi-directional editing is fully supported. IME can be used to input extended character glyphs.

This product is fully-loaded with additional advanced features like over 100 edit actions, line modification marks, commenting/uncommenting, auto-case correct, current line highlighting, read-only regions, code block selection, mouse wheel zooming, clipboard operations, a default context menu, macro recording and playback, text statistics, export to HTML/RTF and much more.

IntelliPrompt - IntelliPrompt UI features are an aid to the end user that support code completion and provide contextually-aware information about surrounding code.

  • Completion List - Displays a number of auto-complete options for the end user to choose in response to Ctrl+Space. Features include description tips, filters, numerous matching algorithms, matched text highlights, and more.
  • Parameter Info - Displays helpful popup hints about an invocation that is being typed, and its parameters. Multiple invocation overloads can be displayed in a single popup, using arrow keys to toggle between them.
  • Quick Info - Provides detailed information about what is at the current caret location or under the mouse. Use the mini-HTML markup language to apply rich formatting to the displayed text.
  • Code Snippet Selection - Shows a completion list for navigating through code snippet folders and selecting an applicable code snippet to insert. Code snippets use the same Visual Studio file format.
  • Code Snippet Templates - Each code snippet can declare multiple fields of text. When a code snippet template session is activated, the text is inserted and the end user can tab between the fields to edit their values.
  • Navigable Symbols - Drop-downs positioned above the editor can show all available root symbols (generally types) and members within the selected root symbol. The selections update as the caret is moved in the editor.

Premium SyntaxEditor Language Add-ons - Enhance the SyntaxEditor code-editing experience with features like parsing, syntax error reporting, automated code outlining, and IntelliPrompt.

  • .NET Languages Add-on - Advanced C# and Visual Basic syntax language implementations.
  • Web Languages Add-on - Advanced XML, JavaScript, and JSON syntax language implementations.
  • Python Language Add-on - Advanced Python syntax language implementation.
    • These premium add-ons are sold separately from SyntaxEditor and control bundles.

Documents and Syntax Languages

  • Documents - Documents are edited by SyntaxEditor and provide access to the text being edited. Each document is associated with a syntax language that provides the control with editing feature configurations and logic.
  • Snapshots - The complete document text is available any time via snapshots, where each snapshot is an immutable versioned thread-safe copy of the text at the time it was created.
  • Lexers - Lexing is the process of scanning text and using logic or pattern-matching to break it up into meaningful tokens. These tokens drive syntax highlighting and are examined by a higher-level parser.
  • Parsers - Parsing can run in a worker thread and is the process of performing syntax and/or semantic analysis on a text, and outputing some sort of parse data, generally an AST (abstract syntax tree) and syntax error collection.
  • Syntax Languages - SyntaxEditor comes with over 25 open source syntax languages that feature syntax highlighting:
    • Assembly
    • Batch file
    • C
    • C#
    • C++
    • CSS
    • HTML
    • INI file
    • Java
    • JavaScript
    • Lua
    • Markdown
    • MSIL
    • Pascal
    • Perl
    • PHP
    • Powershell
    • Python
    • RTF
    • Ruby
    • SQL
    • VBScript
    • Visual Basic
    • XAML
    • XML
      • Need to support other code languages? No problem, you can custom develop syntax languages using all of SyntaxEditor's rich feature set.

LL(*) Parser Framework - The LL(*) Parser Framework is Actipro's own framework for constructing robust text parsers that work standalone or with code editor controls.

  • The framework features grammars that are written in C#/VB using EBNF-like notation, customizable AST construction, advanced error handling/reporting, easy code injection, a complete debugger UI and much more.

Other Features

  • Code Fragments - There can be situations where an end user should only see and edit the contents of a specific method or property, or perhaps only a certain statement or expression. Code fragments support this scenario, enabling full parsing and automated IntelliPrompt.
  • Language Designer - This application ships with SyntaxEditor and aids in the creation of syntax languages. It can perform code generation for a number of language features and even includes a debugger for grammars written using the LL(*) Parser Framework.

Actipro Views for UWP Features

  • Task Board - The TaskBoard control makes it easy to add interactive task scheduling and prioritization to your apps. Task board can create a task planning UI where tasks can be grouped and prioritized.
  • Layout - A task board consists of zero to many columns, each of which can contain zero to many cards. This kind of layout is commonly seen in kanban boards.
  • Drag and Drop - Columns and cards can be dragged around and reordered, all using pleasing sway animations. The drag and drop features can be disabled as a whole or dynamically on a per-instance basis.
  • Event Model - Events are raised that allow for notifications of drags/drops and even taps on cards. The event data includes detailed information about the current state and supports cancellation of certain events.
  • MVVM Support - The data model is completely MVVM friendly and makes heavy use of customizable item styles and templates.