Tweets by @Actipro
Please take some time to learn more about us and our product offerings.
In preparation for a pretty large update to WPF Studio v3.5 that will most likely be out next week, we will be making several blog posts showing some of the new features and controls that will be available in the update. We'll start small and get into the better features as we go.
First, we've added hint text support to Ribbon textboxes and comboboxes. Hint text is a faded out blurb of text that appears when a textbox or combobox is empty. It usually gives some simple instruction for related to the data that should be input to the control, or a description of that data that should be entered.
The hint text starts out somewhat opaque when there is no content in the control. If the control gains focus, the hint text becomes slightly more transparent. If content is entered, the hint text disappears completely.
The same TextBox in three hint text states... the top TextBox doesn't have focus or content, the middle TextBox has focus but no content, and the bottom TextBox has focus and content
Transitions between the various hint text states use smooth animations for visual appeal.
This feature can be used for Ribbon textboxes and comboboxes both inside and outside of the Ribbon.
Keep an eye on our blog as we get into some of the larger new features in forthcoming posts.
The latest build of the .NET Languages Add-on released today includes some great new features related to automated IntelliPrompt.
This build adds IntelliPrompt support for extension methods, a new feature found in C# 3.0 and VB 9.0.
Extension methods allow you to define new methods on existing types without having to sub-class or recompile the original type. This means you can add functionality directly to types for which you don't have source code.
The member list displayed for an Int32 parameter, showing how source-defined extension methods are applied
In the sample above, note the extension method ToStringExt is defined on the static ExtMethodProvider class. In the TestMethod, we press "." to show a member list for its Int32 parameter val and that locates the ToStringExt method, including it in the available members for the Int32 parameter.
Extension methods can be defined in compiled assemblies or in code as above. The most common use of extension methods is with LINQ.
A member list displayed for a string array variable, showing how extension methods from LINQ's classes have been added to the normal members that appear on an array
The latest build adds IntelliPrompt support for delegates.
The parameter info tip displayed for a delegate invocation
Support for recognition of the EditorBrowsable attribute is now available.
Note that the member list shows an entry for _AVisibleClass but not for _AnInvisibleClass since that class has EditorBrowsable(Never) applied to it
When the EditorBrowsable(EditorBrowsableState.Never) attribute is applied to a type or member, that type or member will no longer appear in member lists.
The attribute is recognized for both assembly-defined and source-defined types and members.
A week or so ago in our newsletter we officially announced the development of Actipro Docking for WPF and Actipro SyntaxEditor for WPF. These two products when completed will be added to our WPF Studio control bundle.
Also note that we have some other special controls in development as well, but we'll keep those under wraps for now.
A WPF window showing tool windows that are docked and in auto-hide mode, along with a SyntaxEditor control in the content area of the DockSite
The Docking product is progressing very nicely and is expected to be the next major product added to WPF Studio. Its design harnesses our themes framework, thereby making it easy for us to provide alternate themes such as Aero, or Office themes with minimal effort.
Docking includes many of the extremely flexible behavior options that have made our UIStudio Dock for Windows Forms product very popular. We also have some surprises in store. We'll get into some of these options and new features in future posts.
We're approaching the SyntaxEditor product as an opportunity to do a lot of neat new things and make improvements to the SyntaxEditor for Windows Forms product that is recognized as the industry leader in syntax highlighting editor controls.
One design goal of ours is to try and separate out the document/parsing model to a .NET 2.0-based assembly that could be used by both SyntaxEditor for WPF, SyntaxEditor 5.0 for Windows Forms, and a future CodeHighlighter.
We are working on doing some big language design enhancements too. Even though what we have now is great, we have a lot more ideas that we want to integrate, making it easier for you to develop both simple and complex language parsers for your editor.
Stay tuned to the blog for more information on Docking, SyntaxEditor and other new controls. We'll continue to post new information as development progresses.
The latest build for SyntaxEditor's .NET Languages Add-on now includes complete generic type IntelliPrompt functionality.
A parameter info tip displayed for a generic type... notice how it has resolved the return type to String
This has been a highly requested feature by customers. Now you can fully utilize the power of generic types such as generic collections, etc. with the .NET Languages add-on.
For instance, in the screenshot above, after you would complete the indexer reference and press ".", the member list that would display would be for type String. Type String was declared as the "U" generic parameter in MyCollection, which was passed down to the base Collection generic type. Therefore the String type was used to construct Collection. With the most recent build, SyntaxEditor's .NET Languages Add-on can recognize that and provide proper IntelliPrompt related to it.
Enjoy the new features!
This is an issue that a couple customers have run into and emailed us on, so we wanted to post more about it.
The scenario is that you drag a Ribbon onto a Window and everything shows up fine at design-time. But when you go to run your application, you see a blank Window.
What happened was that you probably clicked and dragged something somewhere in the Visual Studio designer that either:
At run-time a feature of Ribbon is to collapses when there is not enough space for it. You have full control over the threshold size at which this collapse occurs. But one of the items in the list above would have caused this collapse code to kick in because the Ribbon is being forced smaller than desired.
To fix this problem, simply look at the XAML for your Ribbon tag and remove any Width/Height property settings. Also check to ensure that a Margin isn't set that could be causing this. Then run your application and everything should appear like you would expect since now the Ribbon is not being forced to a small size.
In the designer we force Ribbon to stay expanded and ignore its normal run-time collapse behavior. This is done so that you can properly visually design the Ribbon.
We also have a section explaining this issue in the Ribbon control's Troubleshooting topic in the product documentation.
The latest WPF Studio v3.5.0421 build includes an interesting new feature for Ribbon that was requested by several customers, the ability to hide the application button.
A ribbon with its application button hidden
This new feature can be activated with a simple Ribbon.IsApplicationButtonVisible property change.
When the application button is hidden, the QAT and tabs slide over to fill the space.
Explorer bar is an implementation of the task bar that was introduced in Windows XP's explorer. It hosts a vertical stack of expandable panes that generally provide task-based information to the end user.
The ExplorerBar control in its Luna normal-color theme
Any content can be placed within each expander pane and the alternate style of pane headers is supported via a simple style setting.
Each expander pane uses smooth animation to fade in and slide down its contents when expanded. Likewise, when an expander pane is collapsed, its contents fade out and slide back up.
The ExplorerBar control with its second pane being expanded with animated fade in and slide down
This product includes 4 distinct built-in themes and is fully extensible so that other product themes can be custom developed. Themes can be tinted towards any color or set of colors, and brush resources from them may be reused.
The ExplorerBar control in its Windows Classic theme
An option is available to only permit a single expander pane to be expanded at any time. By default, any number of expander panes may be expanded.
This control fully supports left-to-right layouts and user interface resource string customization.
ExplorerBar using a right-to-left flow direction
ExplorerBar has designer support similar to our other controls. For instance when working in Visual Studio 2008, you have access to task panes for the controls:
An ExplorerBar selected in the Visual Studio 2008 designer
ExplorerBar installs toolbox items for VS 2008. It even includes an item template that is available from the New Item pane in VS 2008 that when selected, creates a new Window with a simple ExplorerBar on it.
Any Actipro WPF Studio customer with an active subscription is eligible to get ExplorerBar for free!
Actipro WPF Studio v3.5 adds a new control called NavigationBar. NavigationBar provides a facility for navigating through different panes of data. This concept was introduced in Outlook, and NavigationBar implements all of the features found in Office 2007. It has an elegant user interface which uses buttons to control which navigation pane is selected. Panes can display data or simply act as a container for child controls.
The NavigationBar control in its Office 2007 blue theme
If screen real estate is available, large buttons can be used for pane selection. The end-user has the option of using a splitter to move the large buttons into the overflow button tray, which uses smaller buttons. If not all of the buttons can fit in that tray, they flow out into the overflow menu, accessible by the chevron button.
The NavigationBar supports a minimized mode in which it is collapsed to be very narrow. A button appears in the original content area of the NavigationBar and when clicked, a popup displays containing the content of the currently-selected pane. Minimization can be set to occur on the left or right sides.
A minimized NavigationBar control with its content popup displayed
The customize button can optionally be displayed in the overflow button area of the NavigationBar. When clicked, it displays a menu that is populated with default menu items but can be customized and fully styled
A built-in Options window comes packaged with NavigationBar.
The window offers the end-user the ability to reorder navigation pane buttons by using the Move Up and Move Down buttons. Navigation pane buttons can also be hidden by unchecking the button items in the list. The visibility and sort order can be reset back to defaults by clicking the Reset button.
This product includes 8 distinct built-in themes and is fully extensible so that other product themes can be custom developed. Themes can be tinted towards any color or set of colors, and brush resources from them may be reused.
The built-in Luna Homestead theme and a custom-tinted theme
The NavigationBar has an option to hide its pane buttons. By using this option, you can mimic a simple container that has the NavigationBar appearance.
A NavigationBar control in the Luna normal-color theme containing a single pane, and with pane buttons hidden
NavigationBar also includes styles that can be used for Expander controls to mimic a sub-header panel. The expander uses fade and slide animation during expand and collapse operations.
A native WPF Expander with the Luna normal-color theme's expander style applied
End user layout customizations can be persisted in XML format and restored later.
NavigationBar has designer support similar to our other controls. For instance when working in Visual Studio 2008, you have access to task panes for the controls:
A NavigationPane selected in the Visual Studio 2008 designer
NavigationBar installs toolbox items for VS 2008. It even includes an item template that is available from the New Item pane in VS 2008 that when selected, creates a new Window with a simple NavigationBar on it.
Any Actipro WPF Studio customer with an active subscription is eligible to get NavigationBar for free!