1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
using System;
using System.Reactive.Linq;
using System.Windows.Forms;
using System.Reactive.Disposables;
namespace Excercise6
{
class Program
{
static void Main()
{
var txt = new TextBox();
var lbl = new Label { Left = txt.Width + 20 };
var frm = new Form()
{
Controls = { txt, lbl }
};
var input = (from evt in Observable.FromEventPattern(txt, "TextChanged")
select ((TextBox)evt.Sender).Text)
.Throttle(TimeSpan.FromSeconds(1))
.DistinctUntilChanged();
using (input.ObserveOn(lbl).Subscribe(inp => lbl.Text = inp))
{
Application.Run(frm);
}
}
}
}
|