Winforms 带有被动扩展名和textbox Textchanged事件的Searchbox
我在构建带有被动扩展的搜索框时遇到问题。 我的目标是每隔X毫秒获取最新的可用文本,进行搜索并将结果发布回UI网格(winforms)。但我还停留在第一步 我可以通过日志记录看到,使用Rx样本在5000毫秒内触发了多个事件,而不仅仅是一个!我预计每5000毫秒最多1次 我的代码非常简单,我坚信它是有效的:Winforms 带有被动扩展名和textbox Textchanged事件的Searchbox,winforms,system.reactive,observable,search-box,Winforms,System.reactive,Observable,Search Box,我在构建带有被动扩展的搜索框时遇到问题。 我的目标是每隔X毫秒获取最新的可用文本,进行搜索并将结果发布回UI网格(winforms)。但我还停留在第一步 我可以通过日志记录看到,使用Rx样本在5000毫秒内触发了多个事件,而不仅仅是一个!我预计每5000毫秒最多1次 我的代码非常简单,我坚信它是有效的: EventLoopScheduler scheduler = new EventLoopScheduler(ts => new Thread(ts));
EventLoopScheduler scheduler = new EventLoopScheduler(ts => new Thread(ts));
Observable.FromEventPattern<EventArgs>(this.textBox1, "TextChanged")
.Sample(new TimeSpan(5000), scheduler).ObserveOn(this).Subscribe
(
args =>
{
string text = ((TextBox)args.Sender).Text;
Console.WriteLine("Sample fired. Text: {0}", text);
}
);
EventLoopScheduler=neweventloopscheduler(ts=>newthread(ts));
可观察的.FromEventPattern(this.textBox1,“TextChanged”)
.Sample(新时间跨度(5000),调度程序).ObserveOn(此).Subscribe
(
args=>
{
字符串文本=((文本框)args.Sender).text;
WriteLine(“Sample fired.Text:{0}”,Text);
}
);
我在表单的构造函数中连接所有内容。
我搞砸了吗?
谢谢。使用
时间跨度,而不是新的时间跨度(5000)
,它是5000个刻度,一点也不长。从秒(5)
开始,您是否尝试删除调度程序
参数和。ObserveOn(this)
操作符?无法删除它们,需要响应用户界面。