mirror of
https://github.com/Artemis-RGB/Artemis
synced 2025-12-13 05:48:35 +00:00
16 lines
637 B
C#
16 lines
637 B
C#
using System;
|
|
using System.Reactive.Linq;
|
|
using Artemis.Core;
|
|
|
|
namespace Artemis.UI.Extensions;
|
|
|
|
public static class DataBindingExtensions
|
|
{
|
|
public static IObservable<IDataBinding> AsObservable(this IDataBinding dataBinding)
|
|
{
|
|
return Observable.FromEventPattern<DataBindingEventArgs>(x => dataBinding.DataBindingEnabled += x, x => dataBinding.DataBindingEnabled -= x)
|
|
.Merge(Observable.FromEventPattern<DataBindingEventArgs>(x => dataBinding.DataBindingDisabled += x, x => dataBinding.DataBindingDisabled -= x))
|
|
.Select(e => e.EventArgs.DataBinding)
|
|
.StartWith(dataBinding);
|
|
}
|
|
} |