MindFusion Pack for WinForms 2014.R2

MindFusion has just released Pack for WinForms 2014.R2. The most important new features in the components are listed below:

diagram16x16MindFusion.Diagramming

Resize of multiple nodes

Now you can resize multiple selected nodes simultaneously – just set the AllowMultipleResize property to true. When enabled, dragging a corner or any side adjustment handle of a node, resizes all nodes in the selection.

Visio2013Importer improvements

  • The Item argument of ImportItem event handlers is now pre-set to a DiagramItem instance created for the imported Visio shape, letting you avoid parsing some standard data such as Bounds or Text. You can either modify this item’s properties, or replace it with a new instance of a different type.
  • several bugs and crashes have been fixed

Miscellaneous

  • LinkLabels are now copied by the DiagramLink copy constructor and clipboard methods.
  • DiagramView.ZoomFactor setter no longer automatically aligns its value to ZoomControl zoom steps. This avoids imprecise ZoomToFit results.
  • a few API changes have been made.

Spreadsheet-16x16MindFusion.Spreadsheet

The new version fixes several bugs and offers improved binary and XML serialization. The new version is not compatible with old binary and XML formats.

UI-16x16MindFusion.UI

A DockControl (beta version) has been added to the pack.

The dock control for WinForms

The dock control for WinForms

The trial version is available for direct download from this link:

Download MindFusion.WinForms Pack 2014.R2

If you run into problems with any of the components, please let us know. We shall be glad to assist you. MindFusion is proud with its excellent technical support – the majority of the questions are answered within hours of receiving them.

About MindFusion.WinForms Pack: A set of five WinForms programming components that provide your application with a rich choice of diagramming, charting, scheduling, mapping, reporting and gauge features. The tools are very easy to implement and use. They boast intuitive API and various step-by-step tutorials to get you started. Both online and offline documentation is available. A sample browser presents you with all the samples for each control to let you easily navigate to what you need. You can check some of the features
of each component right now if you look at the online demos:

Visit the features – page of the components for more information about their capabilities:

You can check the prices and licensing scheme here. All components are royalty-free.

MindFusion Pack for WPF 2014.R1

MindFusion has released its Pack for WPF 2014.R1. Here is an overview of the new features:

Support for Visual Studio 2013
The installer can create a toolbox palette in VS2013 for the components and optionally installs VS2013 sample projects.

diagram16x16MindFusion.Diagramming

Import of Visio 2013 files
The new Visio2013Importer class can import *.vsdx files, which were created with Microsoft Visio 2013. The importer requires a reference to the MindFusion.Diagramming.Wpf.VisioImport.dll assembly. You can use the various overloads of the Import method to import the Visio drawing into a DiagramDocument, whose pages correspond to the Visio pages or into a single Diagram, whose content
is merged from all important pages.

Zoom control
The ZoomControl class lets the users change interactively the current zoom level and scroll position of a Diagram or DiagramView. In order to use it, you should add a Zoom control to the window, place it anywhere over the target diagram and set the control’s Target property to that diagram or view. The Zoom control offers numerous customization properties.

Miscellaneous

  • Enable the AllowRenamePages property of TabbedDiagramView to let users rename a DiagramPage interactively by clicking on its tab.
  • Several new shapes added for better compatibility with Visio 2013 basic stencil: RightTriangle, Decagon, Trapezoid, Star4Pointed, Star5Pointed, Star6Pointed, Star7Pointed, Star16Pointed, Star24Pointed, Star32Pointed, Donut, Plaque.
  • DefaultEncoding and AutoDetectEncoding properties added to PdfExporter.
  • and much more.
The Zoom control and the new predefined shape nodes

The Zoom control and the new predefined shape nodes

You can read details about the new features of the pack at the news page on the forum. The trial version is available for direct download from this link:

Download MindFusion.Pack for WPF 2014.R1

About MindFusion.Wpf Pack: A set of advanced WPF components that help you build your business application easy and on time. The tools provide you with a complete set of features to create, edit and render complex flowcharts, charts, diagrams, calendars, schedules, maps and reports. A set of gauges and UI elements is also included. Each component offers various samples, tutorials and detailed documentation. The controls offer simple and intuitive API, completely customizable appearance, numerous input/output options and a rich event set. Each tool has been thoroughly tested to guarantee that you and your application get the high quality and performance you deserve.

You can read more about the capabilities of each component at its features page:

Prices and licenses are explained in details at the buy page. We offer permanent discounts to certain types of commercial as well non commercial organizations – check here if you qualify.

Custom items in Silverlight reports

In this post we will examine how to use custom items in MindFusion reports in Silverlight. The report in question will display the revenue of several companies, sorted in descending order. The custom items will visualize the relative revenue value of each company as a graphics similar to a chart.

To start off, we will define our business objects – a CompanyInfo class with two properties – Name and Revenue, of type string and double respectively.

public class CompanyInfo
{
  public string Name { get; set; }
  public double Revenue { get; set; }
}

Then we will declare sample data – an array of several companies, sorted by revenue:

var companyInfo = new CompanyInfo[]
{
  new CompanyInfo { Name = "My company", Revenue = 12500 },
  new CompanyInfo { Name = "Blue skies enterprise", Revenue = 33200 },
  new CompanyInfo { Name = "Futures & Co.", Revenue = 5800 },
  new CompanyInfo { Name = "Gazettes", Revenue = 21000 },
  new CompanyInfo { Name = "Tiger Bros LLC.", Revenue = 60000 },
}.OrderByDescending(info => info.Revenue);

The actual report is placed inside Resource Dictionary (named MyReport.xaml). The report contains a title and a single data range with three columns – for company name, revenue graphics and revenue value respectively. The actual report is omitted for brevity, but the code of the custom item representing the revenue graphics is shown below:

<report:CustomReportItem Location="50%,0" Size="40%,6" Value="[100*Revenue/Max(&quot;Revenue&quot;)]">
  <report:CustomReportItem.Template>
    <DataTemplate>
      <Grid>
        <Grid.ColumnDefinitions>
          <ColumnDefinition Width="{Binding Converter={StaticResource gridLengthConverter}}" />
          <ColumnDefinition Width="{Binding Converter={StaticResource gridLengthConverter}, ConverterParameter='-'}" />
        <ColumnDefinition />
        <Border BorderBrush="#C0C0F0" BorderThickness="1" Background="#C8C8F4" Margin="3" />
      </Grid>
    </DataTemplate>
  </report:CustomReportItem.Template>
</report:CustomReportItem>

The value of the custom item is calculated as the percentage of the company revenue relative to the maximum revenue amongst all companies. The content of the custom item represents a grid with two columns. The first column contains the border that is used as the representation of the revenue graphics. The width of the columns is calculated according to the item value by using a custom value converter – GridLengthConverter. The GridLengthConverter basically converts the value to a GridLength object with GridUnitType set to Star.

The report is loaded from the resource dictionary using the helper Report.FromDictionary method, then setup with the data and run:

var report = Report.FromDictionary(new Uri("ReportingLiteCustomItems;component/MyReport.xaml", UriKind.Relative), "myReport");
report.DataContext = companyInfo;
report.QueryDetails += (s, e) => e.Details = companyInfo;
report.Run()

Note, that the sample handles the QueryDetails event. This is done in order to supply data to the Max aggregate function used inside the CustomReportItem.Value expression.

Finally, the report is selected inside a ReportViewer on the main form:

viewer.Document = report;

The following image shows the running sample:

The source code is available for download from here:

Download the Complete Source Code for the Sample

You can get the trial version of MindFusion.Reporting for Silverlight from this link:

Download MindFusion.Reporting for Silverlight Trial Version

MindFusion.Pack for WPF 2013.R1

We have just has released MindFusion.Pack for WPF 2013.R1. There are new features in most of the components in the pack. Here are the details:

Support for VisualStudio 2012

The pack installer creates VS2012 toolbox palette for all the components and can optionally install VS2012 sample projects. Toolbox palettes are also created for all .NET target environments supported by the respective Visual Studio versions.

chartMindFusion.Charting

Style and Themes

Styles define the appearance of a given chart element – the axis, the series, the legend. Each ChartTheme is a collection of styles. You can:

• create themes based on the appearance of an existing chart
• create themes with the ThemeEditor tool
• save themes to XML files
• load themes from XML files
• use a number of predefined themes

The green theme

The green theme

Improved Design Time Support

You can now edit all collection properties, including the Series collection, the brushes, strokes, legends and all other collections in design time through the property grid.

Axis Intervals

The new AxisSettings.IntervalCount property lets you specify the exact number of intervals at the axis. In such case the control does not use the Interval property and calculates the value of each interval based on AxisSettings.Min, AxisSettings.Max and AxisSettings.IntervalCount.

A bar chart with two Y-axes.

A bar chart with two Y-axes.

API Changes

diagram16x16MindFusion.Diagramming

Preserve order in tree layout

You can set now the Balance property of the TreeLayout to Preserve if you want to keep the original geometric order of child nodes when arranging them under their parent. This can be used to arrange tree branches in a specific order by first positioning them in increasing horizontal or vertical positions.

The tree layout.

The tree layout.

Selection improvements

  • Set Behavior to SelectOnly to let users select existing items, but not modify them or draw new ones.
  • Use the SetsDirtyFlag property of the Selection class to specify whether the Dirty flag should be set when selection changes.
  • The SelectionStartMoving event is now raised when the user begins moving multiple selected items.
  • Use the ToggleSelection modifier key to select or deselect items by clicking. The key disables selection via lasso rectangle.

Miscellaneous

Container nodes

Container nodes

Report-16x16MindFusion.Reporting

Exporting

You can now use the new PdfExporter and MhtmlExporter, which enable exporting to the PDF and MHTML formats respectively. You can find detailed information about the new exporters in the “Exporting Reports” theme.

Side-By-Side Containers

You can arrange items parallelly by putting them inside the new SideBySideContainer report item. You can use it, for example, to display two (or more) data ranges one next to the other.

A classic report.

A classic report.

Miscellaneous

• New DefaultEncoding property in PdfExporter;
• New Median aggregate function;

Calendar-16x16MindFusion.Scheduling

Improved item presenter

The ItemPresenter class gives you the start and end time of the represented item fragment through the new
StartTime and EndTime properties. In addition, derived classes can override the new OnStartTimeChanged,
OnEndTimeChanged, and OnItemPropertyChanged methods to get notified when the StartTime or EndTime properties change or when any property of the underlying item changes.

Item recurrence

Item recurrence

Improved recurrence

You can validate and customize the occurrences of a recurrence pattern with the new ValidateOccurrence event of the Recurrence class.

You can find more about the new features of the components at the forum. Here is a link to download the trial version:

Download MindFusion.Pack for WPF 2013.R1

About MindFusion.Wpf Pack: A set of advanced WPF components that help you build your business application easy and on time. The tools provide you with a complete set of features to create, edit and render complex flowcharts, charts, diagrams, calendars, schedules, maps and reports. A set of gauges and UI elements is also included. Each component offers various samples, tutorials and detailed documentation. The controls offer simple and intuitive API, completely customizable appearance, numerous input/output options and a rich event set. Each tool has been thoroughly tested to guarantee that you and your application get the high quality and performance you deserve.

You can read more about the capabilities of each component at its features page:

Prices and licenses are explained in details at the buy page. We offer permanent discounts to certain types of commercial as well non commercial organizations – check here if you qualify.

MindFusion.WinForms Pack, R1.2013

The new features include preserve order in the tree layout for the diagramming tool, new events in the calendar control, layout improvements in reporting for WinForms and more. Here are the details:

diagram16x16MindFusion.Diagramming

Preserve order in tree layout

You can set the Balance property of the TreeLayout to Preserve to keep the original geometric order of child nodes when arranging them under their parent. This can be used to arrange tree branches in a specific order by first positioning them in increasing horizontal or vertical positions.

Tree Layout

Tree Layout

Item rendering improvements

Table nodes with glass, emboss and shadow effects.

Table nodes with glass, emboss and shadow effects.

Export improvements

Selection improvements

Report-16x16MindFusion.Reporting

We have fixed several bugs and made a few layout improvements in the reporting component.

Calendar-16x16MindFusion.Scheduling

New Events

Two new events were added to the Calendar class – BeginItemDrawing and EndItemDrawing raised when item drawing starts and ends respectively.

Exporting

You can use the new PdfExporter to export calendars to PDF files.

A schedule exported as a PDF file.

A schedule exported as a PDF file.

You can read more details about the new features of each component at the forum. Use the link below to download the trial version of the control:

Download MindFusion.WinForms Pack R1.2013

If you run into problems with any of the components, please let us know. We shall be glad to assist you. MindFusion is proud with its excellent technical support – the majority of the questions are answered within hours of receiving them.

About MindFusion.WinForms Pack: A set of five WinForms programming components that provide your application with a rich choice of diagramming, charting, scheduling, mapping, reporting and gauge features. The tools are very easy to implement and use. They boast intuitive API and various step-by-step tutorials to get you started. Both online and offline documentation is available. A sample browser presents you with all the samples for each control to let you easily navigate to what you need. You can check some of the features of each component right now if you look at the online demos:

Visit the features – page of the components for more information about their capabilities:

You can check the prices and licensing scheme here. All components are royalty-free.