Subscribe (RSS)

Quick Links

Recent Posts

Tags

Categories

Archive

About Actipro

Actipro Software has been creating .NET user interface control products for Windows Forms since its inception. More recently, Actipro has become a pioneer in the .NET 3.0 WPF control development arena.
Monday, 10 November 2008 00:24 by Bill Henning

Major new Gauge for WPF features and controls

Our Gauge product has just been updated with two new controls, lots of new features for the existing controls, and several bug fixes.  This update is part of build 4.5.0480 that was released this past Friday.

Here are some details on some of the major new features and controls...

New Features

Logarithmic Scales

The CircularGauge and LinearGauge now support logarithmic scales with a configurable base. Logarithmic scales can be useful when more sensitivity is needs for lower values, since smaller values are spaced further apart.

CircularGaugeLogarithmic

A CircularGauge with a logarithmic scale using a base of 10

Glass Effect and Frames

All the gauge controls allow more customization of the frame rendered. The frame rim is now independent of the frame background, which allows you to mix and match the various effects supported by each. In addition, a new glass effect has been added, which produces a more stunning look.

CircularGaugeGlass     CircularGaugeNoGlass

A CircularGauge shown with (left) and without (right) the new glass effect

Dynamic Sizing

The gauges now support being resized dynamically, so that the inner elements resize proportionally. This is accomplished by specifying percentage-based sizes, but fixed-based sizes can still be used if desired.

DynamicSizeSmall   DynamicSizeLarge

A CircularGauge sized 200x200 (left) and 300x300 (right)

Scrolling Text

The DigitalGauge can now scroll the text displayed to the left or right using a configurable interval. This allows long text to be presented to the end-user using a marquee effect.

Marquee

A DigitalGauge using the new dot matrix character type with scrolling marquee functionality

New Controls

Two new controls come with this update, an Led control and a ToggleSwitch control.

Led Control

The Led control is great for presenting simple state (on, off, blinking) information to the end-user. The led light is fully animated and customizable, with options for the light shape and colors.

Led 

An Led with a red light

ToggleSwitch Control

The ToggleSwitch control works much like the native WPF ToggleButton, but looks like a real-life switch. The switch is fully animated and customizable, with 2 styles to choose from.

ToggleSwitch

A ToggleSwitch with a circular look 

Summary

There are too many other new features to list here, but check out the latest build to try them out for yourselves.

Tags:   ,
Categories:   Actipro | New features | WPF
Actions:   E-mail | Permalink | Comments (0) | Comment RSS



Wednesday, 15 October 2008 06:33 by Bill Henning

Ribbon and NavigationBar get new Aero themes

The latest maintenance release 4.5.0475 of WPF Studio adds new attractive Aero themes for Ribbon and NavigationBar.  These new Aero themes match great with our other WPF products such as Docking & MDI.

Additionally we've added a Change Theme button to the top of our Sample Browser.  This lets you quickly set the application-wide theme for the Sample Browser.  You can even use the Change Theme button in our XBAP live demos.

Ribbon Aero Theme

AeroRibbon

A RibbonWindow that contains a Ribbon as well as a DockSite with tool and document windows

Note how Ribbon and Docking & MDI now look great together in Aero.  The above screenshot was taken with glass effects disabled so that you can see how RibbonWindow renders with its Aero theme when used on XP systems.

NavigationBar Aero Theme

AeroNavBar

The new NavigationBar Aero theme

Enjoy the updates!

Tags:   , , ,
Categories:   Actipro | New features | Windows Vista | WPF
Actions:   E-mail | Permalink | Comments (0) | Comment RSS



Friday, 3 October 2008 07:53 by Bill Henning

New PropertyGrid features and other WPF Studio build 471 updates

The latest maintenance release of Actipro WPF Studio v4.5.0471 includes several large updates to the PropertyGrid product, several small updates to other WPF Studio products, and a number of brand new QuickStarts for the Sample Browser.

PropertyGrid Features

Filters

The first new PropertyGrid feature is the ability to quickly and easily filter the items presented. We've included several built-in filters for string and boolean properties, as well as filter groups. String filters support everything from Equals to regular expressions and groups can be used to combine any number of filters using AND/OR logic.

PropertyGridBeforeFilter PropertyGridAfterFilter

Shows the PropertyGrid before (left) and after (right) text is typed to filter out properties by name

We designed the filters so that they can readily be used directly from XAML, including support for data binding. Custom filters can be used when the built-in filters are not enough. 

Filters allow users to quickly find a specific item, or they can be used to permanently exclude items from being displayed. 

A common use of filters is to provide a TextBox above the property grid.  When the end user types in text, only the properties whose names contain the text are displayed.  This is displayed in the screenshot above.

Read-Only State

We have also added a read-only state to the PropertyGrid, which is configured using the new IsReadOnly property. Using this new property, all the value editors in the PropertyGrid can be set to prevent changes.

PropertyGridReadOnly

PropertyGrid with the global IsReadOnly flag set to true; note all values are disabled in this mode

Memory Usage and Other Fixes

Several memory issues and other fixes found since the initial product release are also included in this release.

New Demos and QuickStarts

We've added five completely new demos and QuickStarts to this release, along with updating two of our existing QuickStarts with new functionality.

Docking & MDI Custom Docking Windows

We've had several requests to allow our DocumentWindow and ToolWindow controls to be inherited so that they can be defined as their own classes with separate XAML.  There was a core WPF issue that prevented this in the past (styles wouldn't be applied to the inherited controls) however we've found a workaround for this issue and implemented it in build 471.

In addition, we've added a new QuickStart that shows exactly how to define custom DocumentWindow and ToolWindow classes and reuse them in a DockSite.

MonthCalendar Day Highlighting

Another request we've gotten from several customers is to be able to highlight certain days within our MonthCalendar control.  In build 471, we show the implementation of a custom class that highlights certain days. 

MonthCalendar

The MonthCalendar control showing several types of highlighted days

The same concept could be used to highlight holidays, birthdays, etc. in your own applications.

Enjoy the update!

Tags:   , , ,
Categories:   Actipro | New features | WPF | XAML
Actions:   E-mail | Permalink | Comments (0) | Comment RSS



Monday, 8 September 2008 05:32 by Bill Henning

SyntaxEditor .NET Languages Add-on's IntelliPrompt improvements

We just released build 276 of SyntaxEditor and its add-ons.  This build has more general tweaks and bug fixes, along with some major updates to the IntelliPrompt capabilities for C#/VB via the .NET Languages Add-on.

Here are some of the major new updates.  There are a lot of small enhancements in IntelliPrompt across the board as well.

Anonymous Types

IntelliPrompt now works for anonymous types.  It will construct a type definition behind the scenes that contains the properties you specify and will use that type definition for constructing IntelliPrompt UI.

Anonymous

SyntaxEditor showing a member list for a property that is several levels deep in anonymous types

In the screen above, both abc and def are implicitly defined anonymous types.  You can see how SyntaxEditor correctly identifies the Now property on the abc anonymous type as a DateTime.

Extension Method Application

We have really enhanced the way that we determine which extension methods are applied to various types.  In previous builds there were a number of cases where extension methods could be applied to inappropriate types.  With our new code updates, the add-on attempts to resolve the parameters down to really determine if an extension method applies to a type, even if the type is a complex generic one.

Extension1 

A member list showing how extension methods are applied properly based on the source type

In the screen above, note how the AGoodTextExt extension method appears in the member list, while ABadTestExt does not since the latter is for enumerable int objects, not enumerable char objects.

Extension Method Quick/Parameter Info

The code updates also include some more updates to the quick and parameter info that is displayed for extension methods.  It will attempt to resolve the generic parameters into their "real" types for display to the end user.

Extension2

A member list showing how LINQ's Enumerable extension methods have been applied to a list variable, and how the quick info correctly displays the return value as IEnumerable<int>

In the screen above, the quick info used to say IEnumerable<T> in previous builds, but now says IEnumerable<int>.  We will be making other improvements in this area in the future.

Implicit Variable Declarations in VB

While our C# implementation has had var support for a while, we now have implicit variable declarations working in VB as well.

VBImplicit

A member list displayed for a variable that was implicitly declared

In the screen above, SyntaxEditor correctly displays the members for the ApplicationException type since that type was used to initialize the variable var.

Tags:   , ,
Categories:   New features | Windows Forms
Actions:   E-mail | Permalink | Comments (2) | Comment RSS



Wednesday, 23 July 2008 02:31 by Bill Henning

WPF Studio gets the Royale treatment

Part of the large Actipro WPF Studio build 456 update was a number of new themes for our controls that match the "Royale" Windows system theme.

The Royale theme is a Media Center-like theme that was made available for Windows XP and generally looks more modern than the three standard Windows XP themes.

Now all our themed WPF products look great in the Royale system theme.  Let's take a peek at some of the major controls:

Actipro Ribbon for WPF

RibbonRoyale

Actipro Ribbon with its Royale theme

Actipro Docking & MDI for WPF

DockingRoyale

Actipro Docking & MDI with its Royale theme 

ExplorerBar and Breadcrumb (Part of Actipro Navigation for WPF)

FileSystem

ExplorerBar and Breadcrumb with their Royale themes 

NavigationBar (Part of Actipro Navigation for WPF)

OutlookUIRoyale

NavigationBar with its Royale theme 

Actipro Wizard for WPF

WizardRoyale

Wizard with its Royale theme 

Tags:   , , , , ,
Categories:   Actipro | New features | WPF
Actions:   E-mail | Permalink | Comments (2) | Comment RSS



Tuesday, 22 July 2008 04:19 by Bill Henning

Ribbon for WPF system themes added in build 4.0.0456

We've been hard at work this past week on adding a bunch of new themes for our WPF Studio v4.0 controls.  One area we addressed was adding six new themes for Ribbon for WPF.

SystemThemes

The new Royale, Luna (olive green), and Classic themes for Ribbon 

The six new themes are:

  • Luna (blue)
  • Luna (olive green)
  • Luna (silver)
  • Royale
  • Classic
  • High-contrast

All the new themes (except high-contrast) still use subtle gradient effects to give the controls depth and look great when used in the appropriate operating system.

Default Theme Changes

Previously we only had the three Office 2007 themes (blue, silver, black) for Ribbon.  Windows Vista defaulted to using Office Black while other Windows systems defaulted to using Office Blue.  In this new maintenance release, this behavior has changed.

Now when running XP, the appropriate system-based theme will be automatically chosen instead of Office Blue.  Windows Vista will still use the Office Black since that matches Aero color schemes.

To continue using the Office Blue theme in XP, set our ThemeManager.CurrentTheme = "Office2007Blue"; 

High-Contrast Theme

The High-contrast theme is designed to only be used in high-contrast color schemes.  When you detect a high-contrast theme is active, set our ThemeManager.CurrentTheme = "HighContrast"; and that will activate the theme.

Tags:   , ,
Categories:   Actipro | New features | WPF
Actions:   E-mail | Permalink | Comments (0) | Comment RSS



Tuesday, 15 July 2008 02:15 by Bill Henning

SyntaxEditor .NET Languages Add-on IntelliPrompt Improvements

We just released build 275 of SyntaxEditor and its add-ons.  This build has a lot of minor tweaks and bug fixes that have been made over the last 2-3 months.

In addition there have been some major enhancements in the .NET Language Add-on's IntelliPrompt capabilities.

Delegate Improvements

SEDelegates

A demo of how a delegate can be called like a method with full IntelliPrompt

Delegates now have full IntelliPrompt capabilities, just like calling methods.  Note how in the screenshot above, a generic delegate is called and a DateTime value is properly returned as the value.  The member list shows the members of the DateTime return value.

Generic Methods

SEGenMethods

A member list displayed for the result of a generic method call

Generic methods can have their return type defined by the parameter that is passed to them.  In the example above, a field called ADateProp which is of type DateTime, is passed as a parameter to the generic method Echo.  IntelliPrompt correctly recognizes that per the definition of Echo, the return type is also DateTime.

Constructed Types

SEConstructedType

Parameter info displayed for a method invoked directly off a constructed type

This feature has been highly requested... IntelliPrompt that functions on a constructed type expression.  In the screenshot above, the Append method's parameter info is displayed, following a new StringBuilder() call.

Beginnings of Lambda Expressions

SELambda

A member list displayed for a lambda expression variable

Lambda expressions are a new concept in the latest C# and VB updates by Microsoft.  In the example above, a member list is displayed for the x variable introduced in a lambda expression.  IntelliPrompt determines that x is a DateTime based on the Func<DateTime, bool> declaration.

Note that not all Lambda expression IntelliPrompt works at this time but we will continue to improve IntelliPrompt in all areas as we move forward.

Enjoy the updates!

Tags:   , ,
Categories:   Actipro | New features | Windows Forms
Actions:   E-mail | Permalink | Comments (0) | Comment RSS



Friday, 11 July 2008 03:10 by Bill Henning

WPF Studio v4.0 Released Adding Docking/MDI and Gauge Products

We're very happy to have just released WPF Studio v4.0.  This version is the culmination of several months of work and we're sure you'll love what you see.

Download Actipro WPF Studio v4.0 now

To celebrate, we'll be posting details about a special promotion for existing UIStudio for WinForms customers who are looking to get into the WPF arena.

Docking & MDI for WPF

Actipro Docking & MDI is a complete solution for easily adding a docking tool window and/or multiple document interface to your WPF applications. Allow your end users to drag and dock tool windows wherever they please, and to persist their customizations. Also use this product to fill the gap left by Microsoft not including an MDI mechanism in the WPF platform.

Docking

Docking & MDI showing a docking operation in progress with the Aero theme active 

Docking & MDI has been implemented with flexibility in mind. It has more options than nearly any other competitive product out there and mimics Visual Studio 2008's capabilities. While it supports all the types of standard layouts you find in most docking window products, it also supports some extended functionality that you won't find anywhere else.

Check out more information about the product or try a live demo on our site.

Gauge for WPF

Actipro Gauge is a control suite that implements circular, linear, and digital gauge controls for the Windows Presentation Foundation framework. Each gauge control has tons of options available, providing for limitless possibilities.

Gauge

Circular, linear, and digital gauges combined to display monitoring information 

Gauge controls are ideal for displaying several data points in a concise and compact area. Everything from car dashboards to medical and industrial equipment use gauges, and are quickly recognized and understood by users.

The circular and linear gauges are perfect for presenting a value, or values, bound by a specific range. The digital gauge is perfect for mimicking real-life LED displays.

Check out more information about the product or try a live demo on our site.

Other Enhancements

There were a lot of other minor enhancements and tweaks made throughout our WPF control products for this release.  We added several new demos and useful utilities as well.

Theme Browser

One great new utility found in WPF Studio is the Theme Browser.  A WPF Studio customer was kind enough to post a simple theme browser for our controls in the WPF Studio forums for the benefit of other customers.

We took this idea and ran with it, making a very helpful utility that lets you browse each Brush resource used by our products for the various themes.  The utility shows a preview of each Brush and even allows you to copy a DynamicResource reference accessing the Brush to the clipboard so that you can reuse it in your applications as long as the same theme is loaded.

ThemeBrowser

The new Theme Browser, that comes with WPF Studio

This is really useful for those of you making some customizations to other controls and wanting to use the same Brushes as us so that you have a consistent look in your application.

String Resource Browser

Going along with the Theme Browser idea, we wanted to make a String Resource Browser.  All our products that display text in the user interface stores the default text in string resources.  You can customize or localize the text in code-behind via a single line of code for each item. 

StringResourceBrowser

The new String Resource Browser, that comes with WPF Studio

The String Resource Browser lets you examine all the string resources used in our various products.  When you select a string resource, you have the ability to enter a customized version of it.  The Browser even generates the C# and VB code you can paste into your application to perform the customization.

Tags:   , , , ,
Categories:   Actipro | New features | New product | WPF
Actions:   E-mail | Permalink | Comments (0) | Comment RSS



Thursday, 15 May 2008 05:26 by Bill Henning

How to prevent blurry images and lines in WPF

In our latest maintenance release of WPF Studio's Shared Library v3.5.0427, we have added a simple decorator class called PixelSnapper.

The PixelSnapper decorator basically snaps the measurement of its child content to integer values, thereby helping to prevent blurry images and borders that may appear after it.

The Issue: Blurry Images and Lines in WPF

A problem in WPF is that images and borders can become very blurry when they are positioned on non-pixel boundaries.  This makes the application appear to be poorly designed to end users even though technically, the developer did nothing wrong.

How does this scenario occur?  Very easily in fact.  Say you have a standard WPF Menu at the top of your Window.  The text in the menu items may measure to 12.5 pixels high.  Then lets assume that we have 2 pixels of padding.  Now we have a Menu that is 16.5 pixels high and the problem has been introduced.

The control directly under the Menu will start at vertical location 16.5.  If this control is an Image, all the pixels in the image will appear blurry in the vertical direction since each lies half on one pixel and half on the one below it.  Even setting SnapsToDevicePixels to true does nothing to correct the issue.

A Visual Sample

In the screenshot below, we have a Border with a PixelSnapper surrounding it.  In the left sample, the PixelSnapper has snapped its contents to integers, the default behavior.  In the right sample, the PixelSnapper functionality has been disabled.

PixelSnapper

A demonstration of the differences between using and not using PixelSnapper

Note how the images, which are laid out after the Border, are blurry when not using PixelSnapper functionality due to the decimal size of the Border.

Effective Use of PixelSnapper

Where should you use PixelSnapper?  Generally, text elements like TextBlock controls are the only ones that will measure to decimal values.  So any time you have a text control in your UI and that control will affect the layout of other controls, we recommend you surround it with a PixelSnapper in your XAML.  This will keep everything in your UI on pixel boundaries, enabling images and lines to remain crisp and clear.

Several Options

PixelSnapper includes options for controlling how the separate horizontal and vertical measurements are rounded.   Options for each include None, Floor, Ceiling, and Round.

Tags:   ,
Categories:   Actipro | New features | WPF | XAML
Actions:   E-mail | Permalink | Comments (2) | Comment RSS



Wednesday, 23 April 2008 06:52 by Bill Henning

ExplorerBar Goes Aero

Today's WPF Studio maintenance release added a new Aero theme for the ExplorerBar control.

 ExplorerBarThemeAeroNormalColor

The ExplorerBar control in its new Aero theme

The screenshot above shows the normal and alternate styles for ExplorerBar items.  In addition, when the mouse moves over a header, the header changes its background to reflect the hover state.

Tags:   , , , ,
Categories:   Actipro | New features | Windows Vista | WPF
Actions:   E-mail | Permalink | Comments (0) | Comment RSS