June updates – what’s new from Mindscape?

Developer Notes

It’s been another non-stop month of shipping software updates for Raygun.io, Web Workbench and WPF Elements 7.0. We’ve added a couple more Raygun.io integrations, released Raygun4Net 3.0 and a whole lot more:

Raygun

WPF Elements

  • Released WPF Elements 7.0
  • Corrected axis label when chart width is very small.
  • Support for dynamically changing axis titles. (details)
  • Added PropertyGrid.GroupExpanderMode property. (details)
  • Added PropertyGrid.IsGroupExpandedStatePersistent property. (details)
  • Resolved ChartAxis Foreground issue. (details)
  • Resolved memory leak. (details)
  • Resolved a bug when trying to use mouse to position cursor in a numeric editor. (details)
  • Support for TabIndex in all numeric editors. (details)
  • Resolved a potential stack overflow in ChartAxis when setting the MinimumRange.
  • ChartAxis now supports HorizontalContentAlignment to position labels. (details)
  • Resolved a DataGrid column resize issue after re-loading. (details)
  • Fixed and improved ChartAxis MinimumRange feature. (details)
  • Resolved a DataGrid bug when navigating the selected cell into a group header. (details)

WPF Diagrams

  • Resolved issue of moving source node causing user modified segments to reset. (details)
  • Raise property changed event for “Segments” when they are modified by a user. (details)
  • Clear connection segment cache when switching diagrams. (details)
  • Resolved Diagram image exporting regression. (details)

LightSpeed

  • Fix for issue with nullable strings in LINQ projection.
  • Fix an issue where running a migration that the version table would not be created.
  • Add rows affected to the CommandLog object.
  • Support Time datatype in migrations.

Web Workbench

As usual, the free editions of the nightly builds are available right now from the downloads page, and the full editions from the store.

WPF Elements 7.0 Released!

WPF Elements is our extensive suite of WPF controls including a very powerful set of charting controls, a high performance DataGrid, an intelligent PropertyGrid and lots of other neat controls for all WPF application developers. Today we are announcing the release of version 7.0 of WPF Elements which now targets .Net 4.0 and includes dozens of feature additions, improvements and bug fixes that have been requested and battle hardened by our customers over the past year. Here’s a quick look at some of my favourite additions.

New Heatmap series

One of the new types of series we’ve added is the heatmap series. This takes a list of arrays that make up each column, and then displays the values as colors based on a gradient scale that you provide. The result is an extremely responsive heatmap chart like the one shown here.

heatmap

To use, create a class to represent each data point which will have an X axis plot position (which could be a number, date-time or even an object) and an array of double or float values.

public class DateTimeHeatmapPoint
{
  private DateTime _dateTime;
  private double[] _data;
 
  public DateTimeHeatmapPoint(DateTime dateTime, double[] data)
  {
    DateTime = dateTime;
    Data = data;
  }
 
  public DateTime DateTime
  {
    get { return _dateTime; }
    set
    {
      _dateTime = value;
    }
  }
 
  public double[] Data
  {
    get { return _data; }
    set
    {
      _data = value;
    }
  }
}

Then feed the data to the chart, and setup the gradient using the usual SeriesBrush property.

<ms:Chart>
  <ms:HeatmapSeries ItemsSource="{Binding Data}" XBinding="{Binding DateTime}" YBinding="{Binding Data}">
    <ms:HeatmapSeries.SeriesBrush>
      <LinearGradientBrush>
        <GradientStop Offset="0" Color="#3471C3" />
        <GradientStop Offset="50" Color="#FFF02F" />
        <GradientStop Offset="100" Color="#E10F15" />
      </LinearGradientBrush>
    </ms:HeatmapSeries.SeriesBrush>
  </ms:HeatmapSeries>
  <ms:Chart.XAxis>
    <ms:ChartAxis LabelFormat="{}{0:hh:mm}" />
  </ms:Chart.XAxis>
</ms:Chart>

DataGrid filtering

Filtering is a fantastic feature to have on any DataGrid that has been filled with massive amounts of data. This makes it easier for your users to find items with particular property values or a range of values. Our DataGrid includes two UI options for filtering data. The first option is a special row that appears just under the column headers which can be enabled using the IsFilterRowVisible property.

<ms:DataGrid IsFilterRowVisible="True">

For each column that can be filtered, a single filtering editor is displayed. The DataGrid will automatically use an editor appropriate for the type of data. For example, enum columns will get a combo box, string and numeric columns will get a text editor. For numeric columns, users can even enter comparisons and ranges as seen in the image below.

Numeric Filter

For more diverse filtering options, use the IsColumnHeaderFilterVisible property to display a filter icon within each column header.

<ms:DataGrid IsColumnHeaderFilterVisible="True">

Again, the DataGrid will automatically use a suitable editor for the data type. Multiple values for enum columns can now be selected. Strings, numbers and date-times have more specific options as well as logical operators between filter expressions.

Enum Filter

Comparable Filters

String Filter

DataGrid aggregates and footer

Aggregates are the results of functions applied to all the data in a single column. This feature allows you to calculate and display data counts, min/max values, averages, most frequent values and any custom aggregates that you need. Aggregates can be displayed within grouping rows or/and the new footer feature. A template will automatically be selected to display the results based on the aggregates you use, and you can provide custom display templates too. These can be set up by setting the GroupingAggregate and FooterAggregate properties of each column you need.

<ms:DataGrid ItemsSource="{Binding Data}" AutoGenerateColumns="True" IsFooterVisible="True">
  <ms:DataGridColumn PropertyName="Age">
    <ms:DataGridColumn.FooterAggregate>
      <ms:MaximumAggregate />
    </ms:DataGridColumn.FooterAggregate>
    <ms:DataGridColumn.GroupAggregate>
      <ms:AverageAggregate />
    </ms:DataGridColumn.GroupAggregate>
  </ms:DataGridColumn>
</DataGrid>

Group aggregates

The aggregate feature also works very well in conjunction with the filtering feature. Users can now ask questions like “how many products were sold worth over $500″, or “What is the average speed of galaxy class starships”. They can now simply filter the relevant columns, and then see the aggregate results.

Get all this and much more right now

If you have a current WPF Elements or Megapack license, you can update to this version for free by going to your account page. If you need powerful WPF controls for your latest project, try out the free 60 day trial of WPF Elements now. If you have any questions or suggestions, we’d love to hear from you.

Tagged as WPF Elements

May updates – what’s new from Mindscape?

Developer Notes

It was another busy month at the Mindscape office in May. We got a lot of nice features added to Raygun.io with some fantastic additions in the pipeline ready to ship in June.

Raygun

  • Sidekiq support in Raygun4Ruby.
  • Raygun BugHerd integration.
  • Raygun support for .Net 2.0
  • Issue tracker links from the dashboard.
  • Improvements to the Raygun4iOS provider.
  • Support for C++ error tracking.
  • Nicely formatted the custom data tab.
  • Show card suffix on billing page.
  • Bulk status change functionality on search page.
  • Added RaygunClient.SendingMessage event to the main .Net provider. This can be used to make final modifications to the message, or to cancel the send operation.
  • Added IRaygunApplication to the .Net provider which can be used to provide a custom RaygunClient to the HttpModule.
  • If a windows phone is connected to the internet, but fails to send a message, it will be saved to the device to send later.
  • The IgnoredFormNames feature of Raygun4Net will now filter out cookies which now have their own section in the request data.
  • When enabling Raygun4Net via the http module, the new excludeErrorsFromLocal option on RaygunSettings can be set to true to prevent any exceptions being logged from your debug/dev environment.

WPF Elements

  • Resolved issue with min max values of an axis when switching log converter. (details)
  • Resolved negative width/height binding warnings in the DualSlider.
  • Resolved issue with DataGrid cell backgrounds overlapping horizontal grid lines. (details)
  • Resolved issue preventing data grid entering edit mode.
  • Chart support for CustomTypeDescriptor data points. (details)
  • Fix setting series titles when Chart is created in a DataTemplate. (details)
  • Added DataGrid.IsViewportFixedWhenAddingAndRemovingRows property.
  • Always show at least one axis label to help prevent infinite loop rendering issue.
  • Added ChartAxis.TitleWrapping property.
  • Remove BindingList event handlers from DataSeries. (details)

WPF Diagrams

  • Corrected SelectAll feature.
  • Improved performance of large diagrams.
  • Resolved a potential double up of selected items.
  • Resolved smart scrolling bug when dragging multiple nodes. (details)
  • Resolved issue when running a GridLayoutAlgorithm on an empty diagram.
  • Resolved a couple of NullReferenceExceptions when smart scrolling new a connection. (details)
  • Resolved a null reference exception while smart scrolling a relocated connection. (details)

LightSpeed

  • Add support for negative numbers in procedure arguments.
  • If a logical is wrapped with an equality predicate which was otherwise not supported then unwrap it.
  • Fixed an issue where strings which were null may be incorrectly defaulted to an empty string when surfaced via a LINQ projection

As usual, the free editions of the nightly builds are available right now from the downloads page, and the full editions from the store.

April updates – what’s new from Mindscape?

Developer Notes

We added a lot of service integrations to Raygun.io this month. Try them out and improve your error-fixing work flow. Also, if you’re an iOS dev, install the trusty Raygun Sidekick to upload dSYM files.

WPF Elements

  • Resolved null reference exception when DataGrid ItemsSource binding is removed. (details)
  • Setting the min or max of a DateTime axis will be an indication to switch to auto mode. (details)
  • Remove sort dirction indication from data grid columns when the items source changes. (details)
  • Fixed vertical dual slider label positions. (details)
  • Resolved unusual issue when using DataGridColumn.DisplayMemberBinding. (details)
  • Resolved minor binding errors in the DataGrid. (details)
  • Added ChartAxis.IsAutoViewportEnabled. (details)
  • Allow the zoom box to be used while data is dynamically changed in a Chart. (details)
  • Resolved issue causing the DataGrid column drop indicator to hang around. (details)
  • Resolved data grid column header layout issue. (details)
  • Experimental feature to stack axes via ChartAxis.StackIdentifier. (details)
  • Finish editing when pressing Enter at the end of a DataGrid. (details)
  • float[] support for HeatMapSeries.
  • Support for localizing “W” and “Week” strings in the TimeExplorer.
  • Adjust the axes when series are collapsed. (details)
  • Improved the performance of HeatMapSeries.
  • Resolved issue displaying custom data in the first chart data label. (details)
  • Chart axis title wrapping. (details)
  • Resolved index out of bounds issue on a Y-reversed heatmap. (details)
  • Support for setting StrokeDashArray in a line chart style. (details)

WPF Diagrams

  • Resolved connection point adorner lines dissapearing when switching tabs. (details)
  • Added Zoom option to DiagramBitmapRenderer. (details)
  • Raise property change notifications for connection Data property. (details)
  • Added DiagramSurface.DeselectItem method. (details)
  • Avoid resetting position-calculators when taking nodes out of virtualization. (details)

Web Workbench

  • Update SASS to 3.3.4

LightSpeed

  • Throw exception if IncludeDeleted is used on both sides of a join.
  • Fix issue with path resolution on Mono for lsgen tool.
  • Fix for bug with CompositeIdFieldModel on remove.
  • Avoid invalid cast when dealing with nullable.
  • Support generic types with field converters.

Raygun

As usual, the free editions of the nightly builds are available right now from the downloads page, and the full editions from the store.

March updates – what’s new from Mindscape?

Developer Notes

Here’s last months major feature additions and improvements across all our products. Want insight into crashes in your published applications and websites? Check out Raygun.io now.

WPF Elements

  • Made it easier to override property grid collection display templates.
  • Resolved null reference exception when calling BringRowIntoView on a disposed DataGrid.
  • HeatmapSeries now supports the ChartAxis.IsReversed feature. (details)
  • Variable DataGrid smart scrolling speed based on mouse position. (details)
  • More responsive selection updates while smart scrolling a DataGrid. (details)
  • Restored support for grouping columns that use DisplayMemberBinding. (details)
  • Corrected first and last DualSlider label when reversed. (details)

WPF Diagrams

  • Support for snap specifiers that implement INotifyPropertyChanged. (details)

Web Workbench

  • Update to Sass 3.3.3
  • Update to Less 1.7.0
  • Added Source Maps support to command line tools. (details)
  • Added Source Maps support for Sass.
  • New CSS content type for VS2013.
  • Fix in locating CSS intellisense file(details)

LightSpeed

  • Add an overload to UnitOfWork.Remove to allow removal of a set of entities.
  • Throw exception if IncludeDeleted is used on joined entities.

Raygun.io

As usual, the free editions of the nightly builds are available right now from the downloads page, and the full editions from the store.

Archives

Join our mailer

You should join our newsletter! Sent monthly:

Back to Top