Tweets by @Actipro
Please take some time to learn more about us and our product offerings.
Maintenance releases of our v2016.1 WPF, Universal Windows, and Silverlight controls have been released and are now available for download.
Docking/MDI for WPF and UWP has several new options that give you more control over UI appearance. Tab text on tabbed MDI tabs will now trim long text with ellipses in the middle, instead of the end, allowing for filenames to be more readable.
SyntaxEditor's completion and parameter info providers in all language add-ons now allow you to intercept OnSessionOpening, even when no items were pre-populated, so that you can add your own custom items/info. Cut, copy, paste, drag, and drop all now support the block and full line flags that are compatible with Visual Studio. The Python Language Add-on added a text range property to all type and function definitions, allowing you to implement features like go to definition easier.
The Shared Library added a new RingSpinner control that is an animated ring where the two ring segment ends chase each other around the circle. It's great for display while performing a lengthy operation.
All products received numerous other minor enhancements and bug fixes. See the announcement posts for the detailed list of enhancements and updates:
We're pleased to announce that our Universal Windows controls have officially been released and are ready for use in your Windows 10 apps! Download a free evaluation today and start building your apps with them.
Let's take a quick glimpse at some of the samples that ship with the product and show off the controls:
The focus of this first release was to port our older WinRT XAML controls up to the Universal Windows platform. Look for plenty more updates and controls added in the future.
The 2015.1 versions of our WPF, Silverlight, and WinRT/XAML controls have been released and are now available for download.
Major new features are described below. See the announcement posts for the large detailed list of enhancements and updates, including many items not listed below:
Our Bar Codes product has been ported to the WinRT XAML platform. This product, which already exists on WPF and Silverlight, allows your apps to render vector-based bar codes using many common 2D and linear bar code symbologies.
A full set of demos and QuickStarts are included to help you get going.
The interop assembly that makes it easy to use Docking/MDI with the Prism framework has been updated to reference the latest Prism v5.0.
We've made numerous layout and performance updates to further improve the product.
We also have been working hard on building a completely new internal engine for the Docking/MDI product, which will be available sometime later this year. Keep an eye on our blog for posts detailing the advanced features that are coming with those updates.
All of our edit box controls in the WinRT Editors now have an IsEditable property. When set to false, the edit box behaves more like a ComboBox, while still retaining the rich popups that make the editors unique. This is an ideal option for apps whose primary mode of interaction is expected to be touch.
The CornerRadiusEditBox, PointEditBox, RectEditBox, SizeEditBox, and ThicknessEditBox controls have been updated to support text parsing one and/or two number entries where appropriate, which is useful for easy uniform value entry.
In the above ThicknessEditBox, a 2 is typed and then Enter is pressed. The value is converted to a uniform thickness of 2.
A ValueChanged event has been added to all edit boxes, which fires when a value change is committed.
Finally, edit box padding has been adjusted so that more content is visible in the same amount of space.
A new DigitalGauge.CharacterSegmentThickness property allows for segment thickness adjustments. This gives you even finer control over the presentation of your digital characters.
We've enhanced the 'Linear Gauge Rolling Scale' QuickStart with a new infinite rolling scale example for navigation headings.
The EditorSearchView control now supports an optional "Find All" button.
The RTF export logic has been updated to support extended ASCII characters.
The free CSS language definition now supports the syntax highlighting of media queries.
We've dramatically improved the speed of large completion list display.
Several other performance improvements have been made, such as optimized the scenarios for which the TokenTagger raises its TagsChanged event, and refining of the automatic outlining update logic.
In the WinRT version, we added the SyntaxEditor.AreSelectionGrippersEnabled property, which determines whether the selection grippers show after touch within a view.
The C# parser has been improved to recover better when encountering open block statements so that its AST node structure remains better in tact.
The IntelliPrompt quick info for properties now includes accessors, making it possible to see whether a property is read-only.
The Python language has received an enormous amount of updates, that in sum really improve the entire automated IntelliPrompt feature set.
Check out all these enhancements:
The Views product has a new TaskBoard control added, available in all three (WPF, Silverlight, and WinRT) platforms. TaskBoard can be used to create a board of reorderable columns and cards. All of the drags use smooth animations to give you the feel that you are really interacting with the object.
The first full-source sample that comes with the control is a Repair Shop Scheduling demo, which shows how a TaskBoard can be used to interactively schedule work to resources, such as employees. TaskBoard excels at providing a visual way of representing work/tasks (displayed as cards) within a queue of some sort (displayed as a column).
The second sample is a Task Planning demo, which shows how a TaskBoard can visually organize a project's tasks.
We've added another new primitive SemiEllipse shape, which renders half of an ellipse.
The existing Triangle shape has a new IsClosed property that when set to false will create a triangle with only two of the sides rendered.
Finally, in the WPF Shared Library, we added GradientBrushSlider.CanAddStops and CanRemoveStops properties that determine whether stops can be added and removed from a GradientBrushSlider.
New maintenance of the 2014.2 versions of our WPF, Silverlight, and WinRT/XAML controls have been released and are now available for download.
Major new features are described below. See the announcement posts for the detailed list of enhancements and updates, including many items not listed below:
The Country class, which contains ISO country data and is utilized by our CountryComboBox control, now also includes the 3-character alpha code data for each country.
This is in addition to the existing data of 2-character alpha code and name.
We've improved how the PropertyGrid handles properties on the root SelectedObjects that have a custom type converter.
We've also improved support for handling immutable objects and determining how to interact with their properties.
The Custom Factory sample has been updated to show a property with a non-string type.
This is a great example of showing how to implement a custom data factory and merge properties from various object sources.
We've improved keyboard navigation in the TaskTabControl control, which is generally used within Backstage tabs.
The logic for the sizing of contextual tab groups and their tabs always has had some minor issues when resizing the containing window to be thinner. The issue didn't often manifest itself unless multiple contextual tab groups were displayed.
We spent a while tracking these issues down and fixing them so that all layout sizing is now perfect, as seen in the screenshot above.
We've added support for read-only regions of text via the new IReadOnlyRegionTag tag. This feature has been highly requested by customers, so we're happy to deliver it.
There is a ReadOnlyRegionTag implementation class that supports classification so that read-only regions can be rendered with an alternate background, such as gray in the screenshot above. A new Read-Only Regions QuickStart that demos the new features is now in the Sample Browser.
Another highly-requested set of commands for moving the selected lines up (via Alt+Up) and down (via Alt+Down) have been added. The SDI Editor demo's menu has been updated to show off the new editor commands.
We did a lot of performance profiling related to IntelliPrompt completion lists and we able to make numerous performance enhancements in the areas of item matching and filtering. These enhancements will really help performance when displaying large completion lists.
A SyntaxEditor.IsDragDropTextReselectEnabled property has been added that can be set to false to prevent reselection of dropped text.
Views have been updated so that text changes from a data bound source (such as view model) don't scroll the view back to the first line on each update.
The line commenter has been updated to improve how line comment and uncomment features affect selection. The logic that gets activated by the LineBasedLineCommenter.CanCommentEmptyLines property also has been improved.
We've made several improvements to caret movement when editing bi-directional text.
All of the event ties between the UI and document models have been changed to use weak events.
The ability to resolve references to nested types has been improved.
A completion item for closing the nearest open ancestor element, if any, has been added. (WPF only)
Ctrl+Space after an end tag start delimiter will also auto-complete the matching start tag's name. (WPF only)
We've also improved the editing experience when typing to not affect outlining nodes as much.
New primitive shapes have been added that can be used to create some interesting user interface elements in your apps. The Wave shape renders a wavy line. The ZigZag shape renders a zig-zag line.The Shapes QuickStart has been updated with examples showing usage of the new shapes.
In the 2014.2 versions of our controls for the WPF, Silverlight, and WinRT/XAML platforms we've been adding several new shape controls to our Shared Library that can be very handy in setting up unique interfaces in your apps.
Yesterday's post examined the new Triangle shape. For today's post, we'll take a look at a new ZigZag shape that is coming in the next 2014.2 maintenance release.
The zig-zag shape renders straight lines that cross from one edge of the shape to the other, and back again. The apex side and the number of apexes to render can be specified. It's also possible to set whether the "inside" (fill) of the shape is inverted, or moved to the other side of the apexes.
Standard fill and stroke properties can be used to give the shape varied appearances. The example on the right above is particularly interesting because it shows how an "inverted" zig-zag provides the left side of the red ribbon. It is aligned next to a rectangle (behind the "New!") text, which allows it to generate a complex composited shape.
Zig-zag shapes are great for use when content requires a separator.Instead of always using a linear horizontal or vertical rule to separate content, the zig-zag shape adds some variety to the user interface.
Although shapes like zig-zags are small primitive controls, they can be very helpful in creating modern interesting user interfaces that don't rely purely on squares and rectangles.
You will be able to use our ZigZag class once the next maintenance releases of our 2014.2 WPF, Silverlight, and WinRT/XAML controls are published.
In the 2014.2 versions of our controls for the WPF, Silverlight, and WinRT/XAML platforms we added several new shape controls to our Shared Library that can be very handy in setting up unique interfaces in your apps.
For this post, we'll take a look at a new Triangle shape. Incidentally this shape is used in the MicroTrendIndicator control we recently added to our Micro Charts controls.
The triangle shape is a basic triangle that will fill the area you give it. You use an enumeration to set which side the apex (point) of the triangle is on.
Standard fill and stroke properties can be used to give the shape varied appearances.
While a triangle shape standalone might not be very interesting, when it's combined seamlessly into other UI, it can make for some very nice presentations.
In this usage scenario, we use the triangle shape to help build a touch-friendly sort of breadcrumb control.
Here's another breadcrumb usage scenario but in this case, a smaller centered triangle is used to divide the items.
Although shapes like triangles are small primitive controls, they can be very helpful in creating modern interesting user interfaces that don't rely purely on squares and rectangles.
You can use our Triangle class today by downloading the latest versions of our WPF, Silverlight, and WinRT/XAML controls.
The 2014.4 versions of our WPF, Silverlight, and WinRT/XAML controls have been released and are now available for download.
Note that the 2014.2 version of the WinRT/XAML controls came out last month, introducing our Editors controls, but a new maintenance release is available today adding other new features.
We've added six new built-in chart palette options, including Retro and Sand:
Docking/MDI received numerous updates, including a new option for rafting windows to not hide when in scenario where their owner DockSite is hidden, such as if it's nested in tabs itself. Many updates to focus handling were made, especially in relation to interop controls like WinForms/ActiveX.
Updated the Country and Currency classes with the latest ISO data.
As announced in recent blog posts, our WinRT/XAML controls now have some really unique and universal (Windows Store / Windows Phone) controls for accepting input of common data types.
See our Edit Boxes Overview for a summary of the controls and some links to additional posts describing their functionality.
A new segment chart has been added that allows for visual display of an integer value within a total..
This sort of chart is great for use on dashboards, and also as an indicator of steps or progress achieved.
Another new control is the arrow indicator displayed on the left side of the stock chart below. It's called a trend indicator and alters its UI to reflect whether a numeric value is greater than, the same as, or less than an origin value.
Six new built-in chart palettes have been added as well, including IceCream and Melon.
We've created a new custom property editor sample that shows how to easily add a custom property editor for a certain Type.
Double-clicking a property name has been improved such that if the property doesn't support standard values, it will attempt to focus the related editor instead and select all text.
We've added some nice new features like a ScrollIntoView method that can ensure that a text position is visible within the view, improved caret/selection movement around and delete/backspace of multi-byte characters, and improved backspace to move to the previous tab stop when auto-convert tabs to spaces is active and the caret is before the first non-whitespace character on the line.
We've had a lot of requests for showing how to support ASP-style server tags, where the C# within the tags has automated IntelliPrompt.
We're happy to deliver a new full source sample (seen above) that shows how to harness our .NET Languages Add-on within server tags.
Today's releases contain the first version of our Python Language Add-on, a new premium add-on that supports both v2.x and v3.x syntax.
We'll blog about the language in more detail soon, but you can download and start using it today.
A new triangle shape can be used in UI such as breadcrumbs, tabs, etc.
This shape can auto-size to its container and supports strokes and fills.
We've added a ZoomLevelToTextFormattingModeConverter class, which can switch from Display to Ideal text formatting mode when the zoom level is increased, thereby keeping text clear in any scenario.
The 2014.2 version of our WinRT/XAML controls have been released and are now available for download.
Major new features are described below. See the announcement post for the detailed list of enhancements and updates, including many items not listed below.
This version makes all the WinRT/XAML controls compatible with Windows Phone, meaning that licensed controls will work in both Windows Store and Windows Phone apps!
We've even added a nice phone-based Sample Browser app to show off usage of the controls on the phone.
Actipro Editors is a brand new product that we've been working on for quite a while now and provides over 30 user input controls for common .NET data types such as dates, times, numbers, colors, enumerations, sizes, and many more.
Each of the controls features unique designs that have been specifically crafted to support input by keyboard, mouse, and touch. Data entry is quick and efficient regardless of the input method utilized by the end user, which is especially ideal for universal applications.
All of the controls fully support Windows Store and Windows Phone apps, with alternate appearances as appropriate for phone usage.
We will be blogging and walking through all of the controls in the next couple weeks so keep an eye on our blog.
We've added a new MicroSegmentChart control for use on dashboards, infographics, or as progress indicators.
More details on this control soon too.
Along with various minor enhancements and updates, we have added a brand new premium Python Language Add-on that supports advanced editing for Python v3.x and v2.x. This first release includes parsing, syntax error reporting, code outlining, smart indent, delimiter highlighting/completion, and more.
Look for another update soon featuring automated IntelliPrompt! See this previous blog post for more details on the new add-on.
Several other fun new controls and converters are included with this version too.
New maintenance of the 2014.1 versions of our WPF, Silverlight, and WinRT/XAML controls have been released and are now available for download.
XYDoubleAxis, XYDecimalAxis, and XYDateTimeAxis have been updated to auto-calculate tick mark intervals when they aren't specifically set. A new Axis Ticks QuickStart has been added that shows off automatic tick mark interval calculation.
We've improved the rendering speed of data point labels, improved the rendering logic of bar charts, and updated data point labels to use a subtle border so that they don't blend in with surrounding chart objects of the same color.
Data point labels in pointer visibility mode now delay layouts until a pointer event occurs, thereby speeding up initial chart display.
XYChart now will automatically upconvert non-Double numeric type data to Double type so it can display.
ThemedDataGrid has been updated to style the child controls of auto-generated ComboBox and CheckBox columns.
Added the DockSite.IsRaftingWindowSnapToScreenEnabled, which can be set to false to prevent rafting windows from snapping to the closest screen when being displayed.
Overloads to the TabbedMdiHost.TileHorizontally and TileVertically methods have been added that allow for a maximum number of columns/rows. This permits additional tile configurations, such as a single row of tiles.
Updated double-clicks on property names to cycle through standard values if available.
A PropertyGrid.CommitPendingChanges method has been added that forces any pending LostFocus bindings within property editors to update and ensure the data model is current.
Navigable symbols now support hierarchy levels and item indentation. This feature was added to allow XML element hierarchies to be displayed in the NavigableSymbolSelector.
Many minor enhancements have been made, which can be seen in the detailed update list.
A Grammar.AddChildFrom overload was added that allows for specification of a desired child index.
The XML grammar was reimplemented using type-specific AST nodes, thereby reducing overall AST memory usage by an average of 40%. A XmlNavigableSymbolProvider service was added to the XML language that provides contextual element and attribute display in a NavigableSymbolSelector control. The XML and HTML editor demos were updated to showcase the new navigable symbol provider features.
The HorizontalListBox control was added, which allows for selection of items that are arranged horizontally with a uniform width.
The UniformGrid control was added, which is a Panel that can arrange content in a grid where all the cells in the grid have the same size.
The RadialSlider class logic for snapping values has been improved.
The DelegateCommand class has been added, which is an implementation of ICommand that uses delegates.
Yesterday we posted about a UniformGrid panel control that was being added to our WinRT/XAML and Silverlight Shared Libraries. This sort of panel is already available in native WPF so no implementation was necessary there.
In today's post, I'd like to show another new control coming to our WPF, Silverlight, and WinRT/XAML control platforms: HorizontalListBox.
The HorizontalListBox control is… wait for it… a standard ListBox that uses a horizontal layout. In fact it uses a UniformGrid panel with a single row specification to achieve its layout. This has the benefit of ensuring that each item in the list has an equal width.
This sort of design is great for toggle sorts of controls where there are two or more values from which to choose. In multi-selection mode, you can also toggle each item individually.
Let's have a look of the WinRT version:
Here we have a couple HorizontalListBox controls in place. One for selecting gender and one for doing multiple selection of days of the week. Everything is simple and touch-friendly. Any content can be rendered in the list box items as well.
And here is the WPF version:
It's the same exact control and API but here it renders in the current theme (in this case Metro Light) via our WPF Themes infrastructure.
Best of all, since this restyled control simply inherits the native ListBox, you have all the features available to you that come from the base native ListBox control. Our control has some enhancements such as Left/Right arrow key navigation too.
The HorizontalListBox control will be available in the next 2014.1 maintenance releases of our WPF, Silverlight, and WinRT/XAML Shared Libraries, and will be licensed for use by any of our customers of those control platforms.