Skip to content

v6.0.0

Compare
Choose a tag to compare
@runceel runceel released this 26 Jul 04:50
762c7eb

There is a breaking change on WPF platform.

Breaking changes

  • Dropped Blend SDK. Please use Microsoft.Xaml.Behaviors.Wpf package to use EventToReactiveCommand and EventToReactiveProperty.
    • Migration steps
      • Remove System.Windows.Interactivity and Microsoft.Expression.Interactions references.
      • If you are using System.Windows.Interactivity or Microsoft.Expression.Interactions namespace in your C# code, then change the namespaces to Microsoft.Xaml.Behaviors.
      • Replace Blend SDK's xml namespace(xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" and xmlns:ei="http://schemas.microsoft.com/expression/2010/interactions") in your XAML files to xmlns:i="http://schemas.microsoft.com/xaml/behaviors".

New features

  • Add override using Func<IObservable<T>, IObservable<U>> to ToReactivePropertyAsSynchronized extension method.
// Usual method
var reactivePropertyInstance = source.ToReactivePropertyAsSynchronized(x => x.SomeProperty,
  x => convertLogic(x),
  x => convertBackLogic(x));

// New method
var reactivePropertyInstance = source.ToReactivePropertyAsSynchronized(x => x.SomeProperty,
  ox => ox.Select(x => convertLogic(x)),
  ox => ox.Select(x => convertBackLogic(x)));

It means you can filter value using Where method, like below:

var reactivePropertyInstance = source.ToReactivePropertyAsSynchronized(x => x.SomeProperty,
  ox => ox.Select(x => convertLogic(x)),
  ox => ox.Where(x => filterLogic(x)).Select(x => convertBackLogic(x)));