|
|
Monday, 10 November 2008 00:24 by Bill Henning
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. | 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. | 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. | 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. |  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. | 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. |  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.

Wednesday, 15 October 2008 06:33 by Bill Henning
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 | 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 | The new NavigationBar Aero theme | Enjoy the updates!
Friday, 3 October 2008 07:53 by Bill Henning
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. | 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. | 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. | 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!

Monday, 8 September 2008 05:32 by Bill Henning
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. | 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. | 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. | 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. | 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.

Wednesday, 23 July 2008 02:31 by Bill Henning
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 |  Actipro Ribbon with its Royale theme | Actipro Docking & MDI for WPF |  Actipro Docking & MDI with its Royale theme | ExplorerBar and Breadcrumb (Part of Actipro Navigation for WPF) |  ExplorerBar and Breadcrumb with their Royale themes | NavigationBar (Part of Actipro Navigation for WPF) |  NavigationBar with its Royale theme | Actipro Wizard for WPF |  Wizard with its Royale theme |
Tuesday, 22 July 2008 04:19 by Bill Henning
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. |  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.

Tuesday, 15 July 2008 02:15 by Bill Henning
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 | 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 | 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 | 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 | 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!

Friday, 11 July 2008 03:10 by Bill Henning
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 & 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. |  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. | 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. | 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.

Thursday, 15 May 2008 05:26 by Bill Henning
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. | 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.

Wednesday, 23 April 2008 06:52 by Bill Henning
Today's WPF Studio maintenance release added a new Aero theme for the ExplorerBar control. | 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.
|